`
`IN THE UNITED STATES DISTRICT COURT
`FOR THE DISTRICT OF DELAWARE
`
`SHOPIFY INC. AND SHOPIFY (USA), INC.
`
`Plaintiffs and
`Counterclaim Defendants,
`
`v.
`
`EXPRESS MOBILE, INC.,
`
`Defendant and
`Counterclaim Plaintiff.
`
`)
`)
`)
`)
`)
`)
`)
`)
`)
`)
`)
`)
`)
`
`Civil Action No.1:19-cv-00439-RGA
`
`REBUTTAL EXPERT REPORT OF KEVIN C. ALMEROTH, PH.D.
`
`By:
`
`October 7, 2020
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0001
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`TABLE OF CONTENTS
`
`I.
`II.
`
`VI.
`
`INTRODUCTION AND SCOPE OF ENGAGEMENT .................................................... 1
`BACKGROUND ................................................................................................................ 2
`A. Background and Qualifications .................................................................................... 2
` ............................................................................................................. 2
` ........................................................................................... 2
` ................................................................ 3
`UNDERSTANDING OF LEGAL PRINCIPLES ............................................................... 4
`A. Conception and Reduction to Practice.......................................................................... 4
`B. Claim Construction ....................................................................................................... 5
`C.
`Invalidity Based on Prior Art........................................................................................ 6
`1. Prior Art ........................................................................................................................ 6
`2. Anticipation .................................................................................................................. 9
`3. Obviousness .................................................................................................................. 9
`4. Priority ........................................................................................................................ 13
`D. Written Description .................................................................................................... 13
`E. Enablement ................................................................................................................. 13
`F. Claim Definiteness ..................................................................................................... 14
`G. Patent Eligible Subject Matter .................................................................................... 15
`PRIORITY DATES OF THE PATENTS-IN-SUIT ......................................................... 17
`A. ’397 and ’168 Patents ................................................................................................. 17
`B.
`’755, ’287, and ’044 Patents ....................................................................................... 19
`VIII. SUMMARY OF INVALIDITY REBUTTAL OPINIONS .............................................. 22
`IX.
`BACKGROUND AND TECHNOLOGY OF THE PATENTS-IN-SUIT ....................... 24
`A. Issues with Mr. Schmandt’s Treatment of the State of the Art .................................. 25
`B.
`Issues with Mr. Schmandt’s Overview of the Patents ................................................ 30
`1. The ’397 and ’168 Patents .......................................................................................... 30
`2. The ’755, ’287, and ’044 Patents ................................................................................ 31
`ALLEGED PRIOR ART TO THE ’397 AND ’168 PATENTS ...................................... 32
`A. Overview of The Asserted Prior Art References ........................................................ 32
`1. The Alleged SilverStream System .............................................................................. 32
`a.
`Problems with the Scope of the Alleged “System” .................................. 32
`b.
`Description of SilverStream Version 1.5 .................................................. 35
`2. Müller ......................................................................................................................... 40
`
`VII.
`
`X.
`
`i
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0002
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`(6) Element 37C(i) – “an external database containing data
`corresponding to said information stored in said internal database, and”
`
`310
`(7) Element 37C(ii) – one or more run time files ................................. 310
`(8) Element 37C(iii) – where said run time files utilize information
`stored in said external database to generate virtual machine commands for
`the display of at least a portion of said one or more web pages ............. 310
`THE FULL SCOPE OF THE ASSERTED CLAIMS OF THE ’397 AND ’168
`XII.
`PATENTS IS DESCRIBED ....................................................................................................... 310
`A. The Full Scope of the Asserted Claims of the ’397 Patent Is Sufficiently Described
`with Respect to the Term “Virtual Machine” ................................................................. 311
`B. The Full Scope of the Asserted Claims of the ’168 Patent Is Sufficiently Described
`with Respect to the “Each Web Page Is Defined Entirely by Each of the Plurality of
`Objects Comprising that Web Page and the Style Associated with the Object” ............ 313
`XIII. THE FULL SCOPE OF THE ASSERTED CLAIMS OF THE ’397 PATENT ARE
`ENABLED WITH RESPECT TO THE “VIRTUAL MACHINE” CLAIM TERM ................. 315
`XIV. THE CLAIMED ELEMENTS OF THE ’397 AND ’168 PATENTS, BOTH
`INDIVIDUALLY AND AS AN ORDERED COMBINATION, WERE INVENTIVE IN 1999,
`AND WERE NOT CONVENTIONAL OR ROUTINE TO THE POSA .................................. 318
`XV. ALLEGED PRIOR ART TO THE ’755, ’287, AND ’044 PATENTS .......................... 323
`A. Overview of The Asserted Prior Art References ...................................................... 323
`1. BlackBerry MDS Studio ........................................................................................... 323
`2. Arner ......................................................................................................................... 326
`3. Huang........................................................................................................................ 327
`4. Stevens ...................................................................................................................... 329
`5. Rudolph .................................................................................................................... 330
`XVI. THE ALLEGED OBVIOUSNESS GROUNDS ASSERTED BY MR. SCHMANDT
`AGAINST THE ’755, ’287, AND ’044 PATENTS ARE MERITLESS ................................... 331
`A. The Asserted Claims of the ’755, ’287, and ’044 Patents Are Not Obvious Over
`BlackBerry MDS Studio Alone ...................................................................................... 332
`1. General Problems with Mr. Schmandt’s BlackBerry MDS Studio Obviousness
`Assertions and Grounds .................................................................................................. 332
`2. Rebuttal of Mr. Schmandt’s Limitation-by-Limitation Analysis of the BlackBerry
`MDS Studio Alone Obviousness Ground ....................................................................... 334
`a.
`Element A – “A system for generating code to provide content on a
`display of a device, said system comprising”; and Element A’ – “A method of
`displaying content on a display of a device having a player and” ...................... 334
`b.
`Element B – “computer memory storing a registry of” .......................... 335
`
`xxiii
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0003
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`
`Elements C and C’ – “a) symbolic names required for evoking one or
`c.
`more web components each related to a set of inputs and outputs of a web service
`obtainable over a network, where the symbolic names are character strings that do
`not contain either a persistent address or pointer to an output value accessible to
`the web service,” and Element C’ – “of one or more web components related to
`inputs and outputs of a web service obtainable over a network, where each web
`component includes a plurality of symbolic names of inputs and outputs
`associated with each web service, and” .............................................................. 337
`Element D – “where each symbolic name has an associated data format
`d.
`class type corresponding to a subclass of User Interface (UI) objects that support
`the data format type of the symbolic name, and has a preferred UI object, and” 340
`e.
`Element E – “b) the address of the web service;” ................................... 341
`f.
`Element F – “said method comprising:” ................................................. 342
`g.
`Element G – “an authoring tool configured to:” ..................................... 342
`h.
`Element H – “define a user interface (UI) object for presentation on the
`display, where said UI object corresponds to the web component included in said
`registry selected from the group consisting of an input of the web service and an
`output of the web service” .................................................................................. 343
`Element I – “where each defined UI object is either: 1) selected by a user
`i.
`of the authoring tool; or 2) automatically selected by the system as the preferred
`UI object corresponding to the symbolic name of the web component selected by
`the user of the authoring tool” ............................................................................ 346
`Element J – “access said computer memory to select the symbolic name
`j.
`corresponding to the web component of the defined UI object” ........................ 347
`Element K – “associate the selected symbolic name with the defined UI
`k.
`object” 348
`Element L – “where the selected symbolic name is only available to UI
`l.
`objects that support the defined data format associated with that symbolic name”
`
`348
`m.
`Element M – “store information representative of said defined UI object
`and related settings in a database;” ..................................................................... 349
`Element N – “retrieve said information representative of said one or more
`n.
`said UI object settings stored in said database; and” .......................................... 350
`Element O – “build an application consisting of one or more web page
`o.
`views from at least a portion of said database utilizing at least one player, where
`said player utilizes information stored in said database to generate for the display
`of at least a portion of said one or more web pages” .......................................... 350
`Element P – “produce an Application including the selected symbolic
`p.
`name of the defined UI object, where said Application is a device-independent
`code, and” ........................................................................................................... 352
`Element Q – “produce a Player, where said Player is a device-dependent
`q.
`code;” 353
`Element R – “such that, when the Application and Player are provided to
`r.
`the device and executed on the device, and when a user of the device provides one
`or more input values associated with an input symbolic name to an input of
`defined UI object” ............................................................................................... 355
`
`xxiv
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0004
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`Element S – “1) the device provides the user provided one or more input
`s.
`values and corresponding input symbolic name to the web service” ................. 356
`t.
`Element T – “the web service utilizes the input symbolic name and the
`user provided one or more input values for generating ...................................... 357
`u.
`Element U – “said Player receives the output symbolic name and
`corresponding one or more output values and provides instructions for a display
`of the device to present an output values and provides instructions for a display of
`the device to present an output value in the defined UI object” ......................... 357
`v.
`Claim 13 of the ’287 patent – “The system of claim 1, where said Player is
`activated and runs in a web browser” ................................................................. 358
`w.
`Claim 22 of the ’755 Patent – “The method of claim 12, further
`comprising: providing said Application and Player over said network.” ........... 360
`x.
`Claim 17 of the ’044 Patent – “The method of claim 15, where said web
`component is a text chat, a video chat, an image, a slideshow, a video, or an RSS
`feed.” 360
`y.
`Claim 19 of the ’044 Patent – “The method of claim 15, where said UI
`object is an input field for a web service” ........................................................... 360
`B. The Asserted Claims of the ’755, ’287, and ’044 Patents Are Not Obvious Over
`Arner Alone or in Combination With Other References ................................................ 361
`1. General Problems with Mr. Schmandt’s Arner Obviousness Assertions and Grounds
`361
`2. Rebuttal of Mr. Schmandt’s Limitation-by-Limitation Analysis of the Arner Alone
`Obviousness Ground ....................................................................................................... 361
`a.
`Element B – “computer memory storing a registry of” .......................... 361
`b.
`Elements C and C’ – “a) symbolic names required for evoking one or
`more web components each related to a set of inputs and outputs of a web service
`obtainable over a network, where the symbolic names are character strings that do
`not contain either a persistent address or pointer to an output value accessible to
`the web service,” and Element C’ – “of one or more web components related to
`inputs and outputs of a web service obtainable over a network, where each web
`component includes a plurality of symbolic names of inputs and outputs
`associated with each web service, and” .............................................................. 364
`c.
`Element D – “where each symbolic name has an associated data format
`class type corresponding to a subclass of User Interface (UI) objects that support
`the data format type of the symbolic name, and has a preferred UI object, and” 365
`d.
`Element E – “b) the address of the web service;” ................................... 368
`e.
`Element F – “said method comprising:” ................................................. 368
`f.
`Element H – “define a user interface (UI) object for presentation on the
`display, where said UI object corresponds to the web component included in said
`registry selected from the group consisting of an input of the web service and an
`output of the web service” .................................................................................. 368
`g.
`Element I – “where each defined UI object is either: 1) selected by a user
`of the authoring tool; or 2) automatically selected by the system as the preferred
`UI object corresponding to the symbolic name of the web component selected by
`the user of the authoring tool” ............................................................................ 370
`
`xxv
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0005
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`
`Element J – “access said computer memory to select the symbolic name
`h.
`corresponding to the web component of the defined UI object” ........................ 372
`Element K – “associate the selected symbolic name with the defined UI
`i.
`object” 372
`Element L – “where the selected symbolic name is only available to UI
`j.
`objects that support the defined data format associated with that symbolic name”
`
`372
`k.
`Element M – “store information representative of said defined UI object
`and related settings in a database;” ..................................................................... 375
`Element N – “retrieve said information representative of said one or more
`l.
`said UI object settings stored in said database; and” .......................................... 376
`Element O – “build an application consisting of one or more web page
`m.
`views from at least a portion of said database utilizing at least one player, where
`said player utilizes information stored in said database to generate for the display
`of at least a portion of said one or more web pages” .......................................... 377
`Element P – “produce an Application including the selected symbolic
`n.
`name of the defined UI object, where said Application is a device-independent
`code, and” ........................................................................................................... 377
`Element Q – “produce a Player, where said Player is a device-dependent
`o.
`code;” 378
`Element R – “such that, when the Application and Player are provided to
`p.
`the device and executed on the device, and when a user of the device provides one
`or more input values associated with an input symbolic name to an input of
`defined UI object” ............................................................................................... 380
`Element S – “1) the device provides the user provided one or more input
`q.
`values and corresponding input symbolic name to the web service” ................. 383
`Element T – “the web service utilizes the input symbolic name and the
`r.
`user provided one or more input values for generating ...................................... 383
`Element U – “said Player receives the output symbolic name and
`s.
`corresponding one or more output values and provides instructions for a display
`of the device to present an output values and provides instructions for a display of
`the device to present an output value in the defined UI object” ......................... 384
`Claim 13 of the ’287 patent – “The system of claim 1, where said Player is
`t.
`activated and runs in a web browser” ................................................................. 384
`Claim 22 of the ’755 Patent – “The method of claim 12, further
`u.
`comprising: providing said Application and Player over said network.” ........... 385
`Claim 17 of the ’044 Patent – “The method of claim 15, where said web
`v.
`component is a text chat, a video chat, an image, a slideshow, a video, or an RSS
`feed.” 386
`Claim 19 of the ’044 Patent – “The method of claim 15, where said UI
`w.
`object is an input field for a web service” ........................................................... 386
`2. Rebuttal of Mr. Schmandt’s Arner and BlackBerry MDS Studio Obviousness Ground
`
`387
`General Deficiencies in the Arner and BlackBerry MDS Studio
`a.
`Obviousness Ground ........................................................................................... 387
`
`xxvi
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0006
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`
`Element L – where the selected symbolic name is only available to UI
`b.
`objects that support the defined data format associated with that symbolic name
`
`389
`c.
`Element M – store information representative of said defined UI object
`and related settings in a database ........................................................................ 390
`Element O – “build an application consisting of one or more web page
`d.
`views from at least a portion of said database utilizing at leaset one player, where
`said player utilizes information stored in said database to generate for the display
`of at least a portion of said one or more web pages” .......................................... 391
`Element Q – “produce a Player, where said Player is a device-dependent
`e.
`code” 392
`Claim 17 of the ’044 patent – “The method of claim 15, where said web
`f.
`component is a text chat, a video chat, an image, a slideshow a video, or an RSS
`feed” 393
`C. The Asserted Claims of the ’755, ’287, and ’044 Patents Are Not Obvious Over
`Huang Alone or in Combination With Other References ............................................... 394
`1. General Problems with Mr. Schmandt’s Huang Obviousness Assertions and Grounds
`
`394
`2. Specific Issues with the Huang Alone Obviousness Ground ................................... 395
`Element A – “A system for generating code to provide content on a
`a.
`display of a device, said system comprising”; and Element A’ – “A method of
`displaying content on a display of a device having a player and” ...................... 395
`b.
`Element B – “computer memory storing a registry of” .......................... 396
`c.
`Elements C and C’ – “a) symbolic names required for evoking one or
`more web components each related to a set of inputs and outputs of a web service
`obtainable over a network, where the symbolic names are character strings that do
`not contain either a persistent address or pointer to an output value accessible to
`the web service,” and Element C’ – “of one or more web components related to
`inputs and outputs of a web service obtainable over a network, where each web
`component includes a plurality of symbolic names of inputs and outputs
`associated with each web service, and” .............................................................. 397
`Element D – “where each symbolic name has an associated data format
`d.
`class type corresponding to a subclass of User Interface (UI) objects that support
`the data format type of the symbolic name, and has a preferred UI object, and” 398
`e.
`Element E – “b) the address of the web service;” ................................... 399
`f.
`Element F – “said method comprising:” ................................................. 400
`g.
`Element G – “an authoring tool configured to:” ..................................... 401
`h.
`Element H – “define a user interface (UI) object for presentation on the
`display, where said UI object corresponds to the web component included in said
`registry selected from the group consisting of an input of the web service and an
`output of the web service” .................................................................................. 401
`Element I – “where each defined UI object is either: 1) selected by a user
`i.
`of the authoring tool; or 2) automatically selected by the system as the preferred
`UI object corresponding to the symbolic name of the web component selected by
`the user of the authoring tool” ............................................................................ 402
`
`xxvii
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0007
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`Element J – “access said computer memory to select the symbolic name
`j.
`corresponding to the web component of the defined UI object” ........................ 403
`k.
`Element K – “associate the selected symbolic name with the defined UI
`object” 403
`l.
`Element L – “where the selected symbolic name is only available to UI
`objects that support the defined data format associated with that symbolic name”
`
`404
`m.
`Element M – “store information representative of said defined UI object
`and related settings in a database;” ..................................................................... 404
`n.
`Element N – “retrieve said information representative of said one or more
`said UI object settings stored in said database; and” .......................................... 406
`o.
`Element O – “build an application consisting of one or more web page
`views from at least a portion of said database utilizing at least one player, where
`said player utilizes information stored in said database to generate for the display
`of at least a portion of said one or more web pages” .......................................... 407
`p.
`Element P – “produce an Application including the selected symbolic
`name of the defined UI object, where said Application is a device-independent
`code, and” ........................................................................................................... 409
`q.
`Element Q – “produce a Player, where said Player is a device-dependent
`code;” 409
`r.
`Element R – “such that, when the Application and Player are provided to
`the device and executed on the device, and when a user of the device provides one
`or more input values associated with an input symbolic name to an input of
`defined UI object” ............................................................................................... 411
`s.
`Element S – “1) the device provides the user provided one or more input
`values and corresponding input symbolic name to the web service” ................. 412
`t.
`Element T – “the web service utilizes the input symbolic name and the
`user provided one or more input values for generating one or more output values
`having an associated output symbolic name,” .................................................... 413
`u.
`Element U – “said Player receives the output symbolic name and
`corresponding one or more output values and provides instructions for a display
`of the device to present an output values and provides instructions for a display of
`the device to present an output value in the defined UI object” ......................... 415
`v.
`Claim 13 of the ’287 patent – “The system of claim 1, where said Player is
`activated and runs in a web browser” ................................................................. 416
`w.
`Claim 22 of the ’755 Patent – “The method of claim 12, further
`comprising: providing said Application and Player over said network.” ........... 417
`x.
`Claim 17 of the ’044 Patent – “The method of claim 15, where said web
`component is a text chat, a video chat, an image, a slideshow, a video, or an RSS
`feed.” 417
`Claim 19 of the ’044 Patent – “The method of claim 15, where said UI
`y.
`object is an input field for a web service” ........................................................... 418
`3. Specific Issues with the Huang and Rudolph Obviousness Ground ........................ 419
`4. Rebuttal of Mr. Schmandt’s Limitation-by-Limitation Analysis of the Huang and
`Rudolph Obviousness Ground ........................................................................................ 423
`
`xxviii
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0008
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`
`Element A and A’ – “A system for generating code to provide content on a
`a.
`display of a device, said system comprising”, and Element A’ – “A method of
`displaying content on a display of a device having a player and” ...................... 423
`Elements B-C – “computer memory storing a registry of:”, Element C –
`b.
`“where the registry includes: a) symbolic names required for evoking one or more
`web components each related to a set of inputs and outputs of a web service
`obtainable over a network, where the symbolic names are character strings that do
`not contain either a persistent address or pointer to an output value accessible to
`the web service,” and Element C’ – “of one or more web components related to
`inputs and outputs of a web service obtainable over a network, where each web
`component includes a plurality of symbolic names of inputs and outputs
`associated with each web service, and” .............................................................. 424
`c.
`Element G – “an authoring tool configured to:” ..................................... 426
`d.
`Element H – “define a user interface (UI) object for presentation on the
`display, where said UI object corresponds to the web component included in said
`registry selected from the group consisting of an input of the web service and an
`output of the web service,” ................................................................................. 426
`Element Q – “produce a Player, where said Player is a device dependent
`e.
`code;” 427
`Element U – “3) said Player receives the output symbolic name and
`f.
`corresponding one or more output values and provides instructions for a display
`of the device to present an output value in the defined UI object.” .................... 428
`Claim 17 of the ’044 patent – “The method of claim 15, where said web
`g.
`component is a text chat, a video chat, an image, a slideshow, a video, or an RSS
`feed.” 429
`Claim 19 of the ’044 patent – “The method of claim 15, where said UI
`h.
`object is an input field for a web service.” .......................................................... 430
`D. The Asserted Claims of the ’755, ’287, and ’044 Patents Are Not Obvious Over
`Stevens in Combination With Other References ............................................................ 430
`1. Specific Issues with the Stevens and Rudolph Obviousness Ground ....................... 430
`2. Rebuttal of Mr. Schmandt’s Limitation-by-Limitation Analysis of the Stevens and
`Rudolph Obviousness Ground ........................................................................................ 433
`Element A and A’ – “A system for generating code to provide content on a
`a.
`display of a device, said system comprising”, and Element A’ – “A method of
`displaying content on a display of a device having a player and” ...................... 433
`b.
`Element B – “computer memory storing a registry of:” ......................... 434
`c.
`Element C and C’ – “a) symbolic names required for evoking one or more
`web components each related to a set of inputs and outputs of a web service
`obtainable over a network, where the symbolic names are character strings that do
`not contain either a persistent address or pointer to an output value accessible to
`the web service”, and Element C’ – “of one or more web components related to
`inputs and outputs of a web service obtainable over a network, where each web
`component includes a plurality of symbolic names of inputs and outputs
`associated with each web service, and” .............................................................. 434
`
`xxix
`
`Adobe v. Express Mobile - IPR2021-01225
`PO_EM044_2012-0009
`
`
`
`Rebuttal Expert Report of Kevin C. Almeroth, Ph.D.
`
`
`Element D – “where each symbolic name has an associated data format
`d.
`class type corresponding to a subclass of User Interface (UI) objects that support
`the data format type of the symbolic name, and has a preferred UI object, and” 435
`e.
`Element E – “b) the address of the web service;” ................................... 436
`f.
`Element F – “said method comprising:” ................................................. 436
`g.
`Element G – “an authoring tool configured to:” ..................................... 437
`h.
`Element H – “define a user interface (UI) object for presentation on the
`display, where said UI object corresponds to the web component included in said
`registry selected from the group consisting of an input of the web service and an
`output of the web service,” ................................................................................. 438
`Element I – “where each defined UI object is either: 1) selected by a user
`i.
`of the authoring tool; or 2) automatically selected by the system as the preferred
`UI object corresponding to the symbolic name of the web component selected by
`the user of the authoring tool,” ........................................................................... 439
`Element J – “access said computer memory to select the symbolic name
`j.
`corresponding to the web component of the defined UI object,” ....................... 439
`Element K – “associate the selected symbolic name with the defined UI
`k.
`object,” ................................................................................................................ 439
`Element L – “where the selected symbolic name is only available to UI
`l.
`objects that support the defined data format associated with that symbolic name,”
`
`440
`m.
`Element M – “store information representative of said defined UI object
`and related settings in a database;” ..................................................................... 440
`Element N – “retrieve said information representative of said one or more
`n.
`said UI object settings stored in said database; and” .......................................... 441
`Element O - “build an application consisting of one or more web page
`o.
`views from at least a portion of said database utilizing at least one player, where
`said player utilizes