`
`
`
`
`
`Merrill Communications LLC
`d/b/a Merrill Corporation
`Exhibit 1003
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`
`
`
`
`
`UNITED STATES PATENT AND TRADEMARK OFFICE
`
`
`
`
`
`
`
`
`
`
`
`
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`
`
`
`
`
`
`
`
`
`
`
`
`
`MERRILL COMMUNICATIONS LLC d/b/a MERRILL CORPORATION,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Petitioner,
`
`v.
`
`E-NUMERATE SOLUTIONS, INC.,
`
`
`
`
`
`
`
`
`
`
`
`Patent Owner.
`
`Patent No. 9,268,748
`
`Issue Date: February 23, 2016
`
`
`
`Title:
`SYSTEM, METHOD, AND COMPUTER PROGRAM PRODUCT FOR
`OUTPUTTING MARKUP LANGUAGE DOCUMENTS
`
`
`
`
`
`
`
`DECLARATION OF ANDREW DAVID HOSPODOR, PhD
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`TABLE OF CONTENTS
`INTRODUCTION ....................................................................................... 1
`I.
`QUALIFICATIONS .................................................................................... 1
`II.
`III. MATERIALS CONSIDERED ..................................................................... 4
`IV. DEFINITIONS AND STANDARDS ........................................................... 4
`V.
`STATE OF THE ART ................................................................................. 7
`VI. THE ’748 PATENT ..................................................................................... 8
`
`VII. CLAIM CONSTRUCTION ......................................................................... 9
`A.
`“Semantic Tags” ................................................................................ 9
`B.
`“Mapping” ........................................................................................11
`C.
`“Validation” ......................................................................................11
`VIII. ANALYSIS OF PRIOR ART .....................................................................12
`
`
`
`
`
`-i-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`I, Andrew D. Hospodor, make this declaration in connection with the
`
`proceeding identified above.
`
`I.
`
`INTRODUCTION
`
`1.
`
`I have been retained by counsel for Merrill Communications LLC
`
`d/b/a Merrill Corporation (“Merrill”) as a technical expert in connection with the
`
`proceeding identified above. I submit this declaration in support of Merrill’s
`
`Petition for Inter Partes Review (“Petition”) of United States Patent No. 9,268,748
`
`(“the ’748 patent”).
`
`II. QUALIFICATIONS
`
`2. My complete qualifications and professional experience are described
`
`in my curriculum vitae, a copy of which is attached as Exhibit 1004 to the Petition.
`
`Following is a brief summary of my relevant qualifications and professional
`
`experience:
`
`3.
`
`I received a Bachelor of Science degree in Computer Engineering
`
`from Lehigh University in 1981, a Master of Science degree in Computer Science
`
`from Santa Clara University in 1986, and a Ph.D. in Computer Engineering from
`
`Santa Clara University in 1994. My Ph.D. emphasis was in storage architecture
`
`and systems. My dissertation was entitled: “A Study of Prefetch in Caching SCSI
`
`Disk Drive Buffers.”
`
`-1-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`4.
`
`I have been part of the computer industry for over 25 years and
`
`involved in engineering storage, networking and processing systems. I have also
`
`focused on simulation and implementation of new technologies at Quantum Corp.
`
`5.
`
`I have taught graduate and undergraduate courses at Santa Clara
`
`University. After receiving my Master’s degree in 1986, I joined the Institute for
`
`Information Storage Technology as an Adjunct Lecturer, then later as a Research
`
`Fellow. I have taught courses in Computer Architecture, Storage Architecture,
`
`Hard Disk and Floppy Disk Controller Design, and Grid Computing. I was most
`
`recently the Executive Director of the Storage Systems Research Center at
`
`University of California, Santa Cruz. There, I oversaw the research of faculty,
`
`graduate students, post-doctoral scholars, and I worked with industrial sponsors in
`
`the data storage industry as well as the National Science Foundation (NSF). I am
`
`presently a consultant to NSF.
`
`6.
`
`I am a named inventor on nineteen U.S. patents. I have authored
`
`numerous publications in reference journals, industry periodicals, and am often
`
`cited by my peers in textbooks and journal publications. I have presented to the
`
`American National Standards Institute (ANSI) committee on the Small Computer
`
`Systems Interface (SCSI), the National Association of Broadcasters (NAB), the
`
`SCSI Forum, the Institute of Electrical and Electronic Engineers (IEEE) Systems
`
`Design and Network Conference, and many other related conferences.
`
`-2-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`7. My experience in the design of and implementation of systems using
`
`markup languages, such as HyperText Markup Language (HTML) and Extensible
`
`Markup Language (XML) began while working for Quantum Corp. in Milpitas,
`
`California from 1993 to 1999. At Quantum, I managed the Operating Systems,
`
`Simulation and Performance group responsible for building models of hard disk
`
`drives to study the impact of new features, such as cache sizes and prefetch
`
`algorithms. Quantum already used Matlab software and I explored the use of XML
`
`for data exchange. I also interacted with Microsoft regarding their SQL-Server
`
`database products, and their interest in optimizing data storage devices for their
`
`enterprise customers. Later, in 2001, I returned to Santa Clara University to take a
`
`graduate class in Advanced Database Systems that included both Software Query
`
`Langage (SQL) and noSQL databases.
`
`8.
`
`In 2001 I was also an expert in the matter of Matlab v. Comsol, where
`
`I examined source code that connected Matlab to the libraries of the Java
`
`programming language. These libraries included functions for the parsing and
`
`processing of XML data that form the basis of structured data interchange used in
`
`many modern computer systems. In 2013, I introduced the UC-Share program for
`
`sharing of genomic data, specifically the cancer data of patients, across the five UC
`
`hospitals and cancer centers. UC medical centers deployed software from EPIC to
`
`manage health care records that are shared as XML documents. Genomic data
`
`-3-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`would become an XML extension to EPIC that enables UC clinicians to view
`
`whole genome sequences along with entire patient records, while UC researchers
`
`would access only de-identified patient data to search for clues across patients with
`
`genetically similar diseases.
`
`9.
`
`In summary,
`
`I have a deep
`
`familiarity with
`
`the storage,
`
`manipulation/processing/analysis, transfer, and communication of data, and had
`
`first-hand experience with these technologies at and before the time the application
`
`for the ʼ748 patent was filed.
`
`III. MATERIALS CONSIDERED
`
`10.
`
`In preparing this declaration, I have reviewed, among other things, the
`
`following materials: (a) the ʼ748 patent and its prosecution history; (b) Mastering
`
`Access 97 published by Sybex in 1997 (“Mastering Access”); (c) The XML
`
`Handbook published by Prentice Hall in 1998 (“XML Handbook”); and (d) the
`
`Petition.
`
`IV. DEFINITIONS AND STANDARDS
`
`11.
`
`I have been informed and understand that claims are construed from
`
`the perspective of one of ordinary skill in the art at the time of the claimed
`
`invention, and that during this proceeding, claims are to be given their broadest
`
`reasonable construction consistent with the specification.
`
`-4-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`12.
`
`I have been informed and understand that a claim is invalid because of
`
`anticipation when every element of the claim is described in a single prior art
`
`reference, such that the elements are arranged as required by the claim. I have
`
`been informed and understand the description of a claim element in a prior art
`
`reference can be express or inherent. For a prior art reference to describe a claim
`
`element inherently, the claim element must be necessarily present. Probabilities
`
`are not sufficient to establish inherency.
`
`13.
`
`I have also been informed and understand that the subject matter of a
`
`patent claim is obvious if the differences between the subject matter of the claim
`
`and the prior art are such that the subject matter as a whole would have been
`
`obvious at the time the invention was made to a person having ordinary skill in the
`
`art (POSITA) to which the subject matter pertains. I have also been informed that
`
`the framework for determining obviousness involves considering the following
`
`factors: (i) the scope and content of the prior art; (ii) the differences between the
`
`prior art and the claimed subject matter; (iii) the level of ordinary skill in the art;
`
`and (iv) any objective evidence of non-obviousness. I understand that the claimed
`
`subject matter would have been obvious to one of ordinary skill in the art if, for
`
`example, it results from the combination of known elements according to known
`
`methods to yield predictable results, the simple substitution of one known element
`
`for another to obtain predictable results, use of a known technique to improve
`
`-5-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`similar devices in the same way or applying a known technique to a known device
`
`ready for improvement to yield predictable results. I have also been informed that
`
`the analysis of obviousness may include recourse to logic, judgment, and common
`
`sense available to the person of ordinary skill in the art that does not necessarily
`
`require explication in any reference.
`
`14.
`
`In my opinion, a person of ordinary skill in the art pertaining to the
`
`ʼ748 patent in the 1999 time frame would have been someone with at least a
`
`bachelor’s or graduate degree in computer science, computer engineering, or a
`
`related field, and at least 3 to 5 years of work experience in developing software
`
`for data communication, manipulation, and reporting.
`
`15.
`
`I have been informed that the earliest possible relevant date for
`
`considering the patentability of the claims of the ʼ748 patent is May 21, 1999. I
`
`have not analyzed whether the ʼ748 patent is legally entitled to this filing date. I
`
`shall refer to this time frame as the “relevant date” or the “relevant time frame.”
`
`Based on my education and experience in the field of computer science set forth
`
`above, I believe I am more than qualified to provide opinions about how one of
`
`ordinary skill in the art by the relevant date in 1999 would have interpreted and
`
`understood the ʼ748 patent and the prior art discussed below.
`
`-6-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`V. STATE OF THE ART
`
`16. By about 1998, data communication, manipulation and reporting were
`
`commonplace and well understood. Organizing data into a database using a
`
`schema that defined data types present within a given document (i.e. Document
`
`Type Definitions or DTDs), along with associated query languages to access the
`
`database, was supported in software packages available from a variety of vendors,
`
`including IBM and Microsoft. Structuring of data into a database became the basic
`
`tool for large organizations to manage business-critical data and perform analysis,
`
`manipulation and reporting of it. However, each vendor’s operating system, and
`
`often applications running on that operating system, stored data in files with
`
`different formats. This made the exchange and reporting of data tedious and time
`
`consuming. Oracle subsequently introduced a new database that was not bound to a
`
`particular operating system, rather, it initially supported the VAX/VMS and UNIX
`
`operating systems in the 1980s. The World Wide Web Consortium (W3C) first
`
`published HyperText Markup Language (HTML) (and later published eXtensible
`
`Markup Language (XML)) as ISO standard 8879 in 1986. XML was immediately
`
`adopted as a means to structure data outside of a database. Because XML was also
`
`operating system independent, it rapidly became the preferred method for data
`
`interchange. By 1998, the relevant time frame, Fortune 500 companies had
`
`necessitated that their complex applications must communicate with each other
`
`-7-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`across their enterprise, in order to remain competitive. Although Sales,
`
`Accounting, Resource Planning, Business Intelligence, Reporting and other
`
`applications often came from different vendors and ran on different operating
`
`systems, they could all use XML as a mechanism for structured data interchange.
`
`Oracle offered their first database with complete XML support in 1999. Today,
`
`even common Microsoft Office applications like Word, Excel and PowerPoint rely
`
`upon XML to store structured user data in files with .docx, .xlsx and .pptx formats.
`
`Likewise, the Securities Exchange Commission (SEC) has allowed publically
`
`traded companies to file their 10-K statements using eXtensible Business maRkup
`
`Language (XBRL) – which is based upon XML technology – since 2005.
`
`Companies report XBRL filings to SEC via the Electronic Data Gathering,
`
`Analysis, and Retrieval system (EDGAR).
`
`VI. THE ’748 PATENT
`
`17. The asserted claims of the ’748 patent are directed to an apparatus that
`
`uses XML, an apparatus that contains a computer program to process XML data
`
`and a method that receives, processes, outputs and stores XML data. However, the
`
`ʼ748 patent lacks any description of an actual implementation. Rather, the ʼ748
`
`patent focuses on abstract concepts and relies heavily upon generic figures. It lacks
`
`detailed flowcharts or pseudo-code to describe the interactions of the contents
`
`within the figures. One skilled in the art would realize that a generic figure of a
`
`-8-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`computing system is not sufficient for a POSITA to implement a “System, Method,
`
`And Computer Program Product For Outputting Markup Language Documents.”
`
`The ’748 patent essentially describes creating a schema for XML, something that
`
`was well understood by a POSITA in the 1998 timeframe.
`
`VII. CLAIM CONSTRUCTION
`
`A.
`
`“Semantic Tags”
`
`18. Claim 1 of the ʼ748 patent includes the phrase “a plurality of
`
`computer-readable semantic tags that describe a semantic meaning of the data
`
`values.” Claims 11 and 19 use the term “semantic tags” repeatedly, including as
`
`part of the phrase “receiving a user selection of one or more computer-readable
`
`semantic tags.”
`
`19. The specification of the ’748 patent includes a Glossary, which
`
`defines “[t]agging” as “adding metadata.” (ʼ748 patent at 2:56; see also 15:55-56.)
`
`I understand that when a patent applicant “acts as his own lexicographer” and
`
`defines a term in the patent specification, that definition should be used even if it
`
`conflicts with the normal meaning of the term or phrase.
`
`20. The term “metadata” itself was well-known in the computer industry
`
`by the 1999 timeframe. The Microsoft Computer Dictionary (4th ed. 1999) defines
`
`“metadata” as “[d]ata about data.” (Microsoft Computer Dictionary at 288.) The
`
`specification of the ’748 patent uses the term “metadata” consistently with that
`
`-9-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`definition. For example, the ʼ748 patent includes the following example of some
`
`of the metadata that may be used in the system:
`
`The image database 226 contains document metadata that references
`the original document table or flat file in the original database 230.
`Documentation information contained in the image database 226 is
`added to this data. It further includes line item set metadata for the
`set of line items, documentation that is typically of a more technical
`nature and applies to the line item set as a whole. Examples of such
`information is table types, field definitions (“x values”) and
`hyperlinks that apply to the line item set as a whole. (A line item set
`may be generally analogous to a table; it is a collection of line items,
`which are analogous to records in the database world.)
` (ʼ748 patent at 16:34-48 (emphasis added).)
`
`21. The term “semantic” was also widely used in the computer industry
`
`by the 1999 timeframe. “Semantics” is defined by Microsoft Computer
`
`Dictionary (4th ed. 1999) to mean “1. In programming, the relationship between
`
`words or symbols and their intended meanings.” (Microsoft Computer Dictionary
`
`at 402.) The specification of the ’748 patent uses the term “semantics” in this
`
`same way, to refer to the underlying meaning of data:
`
`Semantics refers to the fact that RDML provides generic tags in which
`indicators of the “meaning” of the numbers, including the
`vocabularies of other SGML and XML markup languages, can be
`placed. This allows RDML to act as a “wrapper” for data from other
`
`-10-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`markup language documents. Semantic meaning is also conveyed in
`text-based attributes: legends, titles, labels, footnotes, etc.
`(ʼ748 patent at 46:11-18.)
`
`22. Putting these terms together, the broadest reasonable interpretation of
`
`“semantic tag” is “a reference that adds data describing the meaning of the data.”
`
`B.
`
`“Mapping”
`
`23. Claims 11 and 19 include the phrase “mapping the one or more of the
`
`computer-readable semantic tags to the one or more of the original values.”
`
`24. The term “mapping” was well-known in the computer industry by the
`
`1999 timeframe. The Microsoft Computer Dictionary (4th ed. 1999) defines
`
`“map” as “[t]o translate one value into another.” (Microsoft Computer Dictionary
`
`at 281.) Based on my review of the ʼ748 patent’s specification and prosecution
`
`history, the patent uses “mapping” consistently with this definition. Accordingly,
`
`the broadest reasonable interpretation of “mapping” is “translating one value into
`
`another.”
`
`C.
`
`“Validation”
`
`25. Claim 1 includes the phrases “validation of the at least one computer-
`
`readable XML-compliant data document,” “datatype rule for validation of a type of
`
`data values,” “calculation rule for validation of a calculation involving data
`
`values,” and “unit rule for validation of a unit of data values.”
`
`-11-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`26. As with the previous terms, “validation” was well-known in the
`
`computer industry by the 1999 timeframe. The Microsoft Computer Dictionary
`
`(4th ed. 1999) defines “validity check” as “[t]he process of analyzing data to
`
`determine whether it conforms to predetermined completeness and consistency
`
`parameters.” (Microsoft Computer Dictionary at 464.) Based on my review of the
`
`ʼ748 patent’s specification and prosecution history, the patent uses “validation”
`
`consistently with
`
`this definition.
`
` Accordingly,
`
`the broadest reasonable
`
`interpretation of “validation” is “analyzing data to determine whether it conforms
`
`to predetermined completeness and/or consistency parameters.”
`
`VIII. ANALYSIS OF PRIOR ART
`
`27. Mastering Access discloses the use of a commercially available
`
`software database product (Microsoft Access 97) that organized, structured and
`
`managed data within a database. A POSITA would have understood that the
`
`Access 97 product was an executable program stored as code on a computer-
`
`readable medium (such as a hard disk), loaded into memory (RAM), and run by a
`
`computer processor.
`
`28.
`
`In the relevant timeframe, the Access 97 database could import and
`
`output data in HTML format. (See Mastering Access at 125-126, 237-240.) At
`
`that time, a POSITA could use free, publicly-available software, such as “The
`
`Microsoft XSL processor” or “docproc,” to convert between XML and HTML.
`
`-12-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`(See XML Handbook at 156, 397-398.) A POSITA would have found it obvious
`
`to use such tools to import XML data into the Access 97 database. A POSITA
`
`would have understood that these tools could have been run as stand-alone
`
`applications or could be incorporated into a database program such as Access 97
`
`using standard coding, database query, or macro techniques. Such techniques are
`
`discussed in Mastering Access. (See Mastering Access at 357-416 (queries), 731-
`
`764 (macros), 853-868 (coding in Visual Basic for Applications).)
`
`29. Both HTML and XML were derivatives of the SGML language and
`
`published by
`
`the same organization,
`
`the World Wide Web Consortium
`
`(W3C.ORG), before the relevant timeframe. (See XML Handbook at xxxix-xl.)
`
`XML was designed to expand the capabilities of HTML and to provide an
`
`application-independent file format to make it easier to share information between
`
`different applications. (See id. at xxxv-xl.) This common origin and structure
`
`would have provided a POSITA with additional motivation to convert between
`
`HTML and XML (which the publicly-available tools in fact did).
`
`30. The fact that a fundamental purpose of XML was to provide an
`
`application-independent file format for easier sharing of information was itself
`
`strong motivation for POSITAs to translate all manner of file formats into XML.
`
`This is not hypothetical – as discussed, from its inception, XML has been used to
`
`store all manner of data files, and has been incorporated into a wide variety of data
`
`-13-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`formats. Doing so would have been particularly easy (and obvious) for a program
`
`like Microsoft Access that already had the ability to import and export data in
`
`HTML format.
`
`31. A POSITA desiring to add XML file support and functionality to a
`
`program like Microsoft Access would look to well-regarded publications about
`
`XML and its applications, such as The XML Handbook. Thus, a POSITA would
`
`have been motivated (and it would have been obvious) to add the XML features
`
`and functionality taught by The XML Handbook to expand the set of file types
`
`compatible with the Access 97 software described in Mastering Access.
`
`32. Conversely, The XML Handbook teaches embedding SQL database
`
`queries in an XML document to access and pull data from a SQL database. (See,
`
`e.g., XML Handbook at 248-249 and Figure 18-3.) A POSITA seeking to
`
`implement the teachings of The XML Handbook would look to known databases
`
`supporting SQL queries to do so. Microsoft Access is one such SQL database
`
`platform. (See, e.g., Mastering Access at 186 (“An SQL statement is an expression
`
`that defines an SQL (Structured Query Language) command. Access uses SQL
`
`statements behind the scenes to interpret any queries you create in the query design
`
`window.”).) The XML Handbook thus provides an express motivation to be
`
`combined with references describing the structure and operation of SQL databases,
`
`like Mastering Access.
`
`-14-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`33. Mastering Access teaches that the Access 97 software can import or
`
`link database records from tables stored in text, spreadsheet, HTML, or other
`
`database files. (See Mastering Access at 209-240.) When Access imports or links
`
`a table, each row in the table corresponds to an individual record (except the first
`
`row, which may be used to specify the field names), and the columns correspond to
`
`the individual data fields within each record.
`
`34. The difference between importing and linking data is that an imported
`
`table is copied into the Access database. In contrast, a linked data source is read
`
`by Access from its original location. (See Mastering Access at 219-239.) If the
`
`data in a linked data source is changed, Access will read the changed data the next
`
`time it looks up the information from the data source. Mastering Access teaches
`
`that Access 97 could create similar dynamic links in output documents, such as
`
`reports or tables published to the World Wide Web. (See id. at 126, 247-250.)
`
`Those dynamically-linked documents would execute a query back to Access to
`
`obtain fresh data whenever they were browsed. (See id.)
`
`35. Mastering Access also teaches outputting data from the database as
`
`“reports.” (See Mastering Access at 445-472.) The “report” described in
`
`Mastering Access is actually a set of dynamic instructions or template for building
`
`the final reporting document that a casual recipient might call a “report.” (See id.)
`
`Mastering Access teaches “previewing” and “printing” the report in order to view a
`
`-15-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`static instance of the report. (See, e.g., id. at 470-471.) The report itself remains
`
`dynamic, and can be modified to present the data in different ways the next time it
`
`is previewed or printed. (See id.) A POSITA would have understood that if a
`
`report was based on a linked source document, and the data in the source document
`
`changed, Access would pull the updated data from the source document and
`
`include it in the next instance of the report when the report was printed or
`
`previewed.
`
`36. Mastering Access explains that “a database can contain many tables.”
`
`(Mastering Access at 43.) One of the advantages to storing information in multiple
`
`tables within the database is that “it’s easier to manage data if all the information
`
`about a particular subject is in its own table.” (Id.) A POSITA would have
`
`understood that the instructions provided in Mastering Access to importing and
`
`linking data from external tables (text, spreadsheet, HTML, etc.) could simply be
`
`repeated to add multiple tables to the database.
`
`37. Mastering Access explains that Access 97 can perform operations on
`
`the data in database records by using field names to identify the specific data fields
`
`at issue. For example, Mastering Access describes the creation of “a macro that
`
`adds 7.75 percent sales tax to a total sale but only if the sale is made in the state of
`
`California.” (Mastering Access at 742.) The database records for this example
`
`contain fields named “State,” “SubTotal,” “SalesTaxRate,” “SalesTax,” and
`
`-16-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`“TotalSale,” the last two of which are “calculated fields.” (Id.) Mastering Access
`
`teaches that the macro initially sets the “SalesTaxRate” value for each record to 0,
`
`and then subsequently changes that value to 0.775 for the subset of records tagged
`
`with “CA” in the “State” field. (See id. at 744.) A POSITA would have
`
`understood that Access recognizes the sales tax rate associated with a particular
`
`subtotal based on the field name, as well as the two-letter state identifier stored in
`
`the “State” field of each record.
`
`38.
`
`In another example, Mastering Access teaches the use of database
`
`queries to select records based on field names and other tags. (See Mastering
`
`Access at 357-442.) Figure 10.2 in Mastering Access illustrates the creation of a
`
`query that “[s]elect[s] records in which the order was placed in February 1997 and
`
`the quantity times the unit price ([Quantity] *[Order Details]! [Unit Price]) is
`
`greater than $75.” (Id. at 364.) In this example, the field names “OrderDate,”
`
`“Quantity,” and “UnitPrice” are all semantic tags identifying the meaning of the
`
`associated data. The query selects records based on the values associated with
`
`those tags.
`
`39.
`
`In yet another example, Mastering Access teaches that a user may
`
`select a semantic tag, such as a “Last Name” data field name, by clicking on any
`
`data associated with that tag. (See Mastering Access at 74.) Once the selection has
`
`been made, a user may perform operations on the records containing data
`
`-17-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`associated with the selected tag, such as executing a “Sort Ascending” command to
`
`sort the records alphabetically by last name. (See id.)
`
`40. Similarly, Mastering Access teaches that a user may select data, such
`
`as the value “WA” in a “State/Province” field, by clicking on it. (See Mastering
`
`Access at 74.) Once the selection has been made, a user may perform operations
`
`on the records containing that data value associated with the same tag, such as
`
`executing a “Filter By Selection” command to display only the records with WA in
`
`the “State/Province” field. (See id.)
`
`41. Mastering Access teaches that the database records (the line items in a
`
`database table) may have multiple hierarchical relationships between them. (See
`
`Mastering Access at 422-426.) For example, Figure 11.5 shows a database form
`
`graphically illustrating the hierarchy within a database between line items for a
`
`business’s customers, orders, and order details. (See id. at 423.) Each customer
`
`line item may be associated with multiple order line items (each customer places
`
`multiple orders), and each order line item may be associated with multiple “order
`
`detail” line items (a single order may be for multiple different products). (See id.)
`
`While this example is presented using “one-to-many” database relationships (a link
`
`from one line item connects to multiple other line items), a POSITA would
`
`understand that the teaching applies equally to simpler “one-to-one” relationships
`
`(each link connects to only one other line item).
`
`-18-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`
`42. Mastering Access also teaches the use of validation rules, which were
`
`well known in computer programming long before the 1999 timeframe. (See, e.g.,
`
`Mastering Access at 166-167, 239-241, 298-299, 1067-1068.) For example,
`
`Mastering Access teaches that Access will report an error in the “ImportErrors”
`
`table for an imported document if “[t]he data in a text file or spreadsheet field is
`
`the wrong type for the corresponding table field. For instance, the table field may
`
`be a Currency type, but the data contain a person’s name.” (Id. at 241; see also,
`
`e.g., id. at 298.) This operation validates both the data type (e.g., currency) and the
`
`acceptable units for that data type (a text string is not an acceptable unit of
`
`currency).
`
`43. Similarly, Mastering Access teaches the use of validation rules to
`
`identify fields in a record being imported that contain data whose values are out of
`
`bounds for the acceptable limits of the corresponding data field. For example,
`
`Mastering Access teaches that Access will report an error in the “ImportErrors”
`
`table for the imported document if “[t]he data in a numeric field is too large for the
`
`field size of a table field. For example, Access can’t import a record if the table
`
`field has a Field Size property of Byte but the data contains a value greater than
`
`255.” (See Mastering Access at 241.)
`
`44. Mastering Access also teaches the creation of additional validation
`
`rules for particular fields by a user, along with corresponding “Validation Text”
`
`-19-
`
`
`
`
`Petition for Inter Partes Review of U.S. Patent No. 9,268,748
`
`error messages. (See, e.g., Mastering Access at 166-167, 299, 1067-1068.)
`
`“Validation rules put limits on a field or form, such as insisting that a control
`
`contain data, be greater than a minimum value, or that two or more fields contain
`
`data that is not mutually exclusive.” (Id. at 1067.) A POSITA would have
`
`understood that any of these validation rules is equally applicable to fields in which
`
`the user manually enters data, fields containing data imported from external source
`
`documents, and fields containing values calculated by Access based on other
`
`fields.
`
`45. The XML Handbook, authored by Charles Goldfarb, the inventor of
`
`SGML and Paul Prescod, a member of the of the World Wide Web Consortium
`
`XML team, describes what a markup language is, what XML is, how it works, and
`
`its advantages to uses of the World Wide Web. (See generally XML Handbook;
`
`see also id. “About the Authors” (back cover).) The XML Handbook teaches the
`
`structure and function of XML. (See, e.g., id. at 33-47.) For example, The XML
`
`Handbook explains that XML is used for digital representation of documents,
`
`using “elements” to represent the logical components of a document, “attributes”
`
`to describe properties of the ele