DETAILED ACTION
Priority
This action is in response to the original filing dated 27 March 2024 which claims priority to a U.S. provisional application, dated 27 March 2023. Claims 1-20 are pending and have been considered below.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Drawings
Color photographs and color drawings are not accepted in utility applications unless a petition filed under 37 CFR 1.84(a)(2) is granted. Any such petition must be accompanied by the appropriate fee set forth in 37 CFR 1.17(h), one set of color drawings or color photographs, as appropriate, if submitted via the USPTO patent electronic filing system or three sets of color drawings or color photographs, as appropriate, if not submitted via the via USPTO patent electronic filing system, and, unless already present, an amendment to include the following language as the first paragraph of the brief description of the drawings section of the specification:
The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawing(s) will be provided by the Office upon request and payment of the necessary fee.
Color photographs will be accepted if the conditions for accepting color drawings and black and white photographs have been satisfied. See 37 CFR 1.84(b)(2).
Examiner notes that the color drawings must be of sufficient quality such that all details in the drawings are reproducible in black and white in the printed patent. Certain text of the reproduced color drawings in the instant application is unreadable.
Claim Objections
Claim 16 is objected to because of the following informalities: claim 16 recites “receiving at the data modeling platform from the user device user input to define”, examiner suggests adding a comma between user device and user input to increase readability. Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Independent claims 1, 9 and 16 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more. Claims 1, 9 and 16 are directed to the abstract idea of determining data values and mathematical curves, as explained in detail below. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the additional computer elements, which are recited at a high level of generality, provide conventional computer functions that do not add meaningful limits to practicing the abstract idea.
Claims 1, 9 and 16 recite, in part, “determining a plurality of modified data values based on the received user input … determining a matching curve from a plurality of known curves, the matching curve associated with a mathematical operation … generate a new set of data values based on the mathematical operation and the set of data values” These steps describe the concept of determining data values and mathematical curves which, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. Nothing in the claim precludes the step from practically being performed in the mind. For example, but for the “processor/device” language, “determining and generating” in the context of these claims encompasses the user manually performing calculations. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Additionally, the claim limitations fall into the “Mathematical Concepts” grouping of abstract ideas. As such, the description in claims 1, 9 and 16 of determining data values and mathematical curves is an abstract idea.
This judicial exception is not integrated into a practical application. In particular, the claim recites additional elements – using a processor/device to perform the steps, receiving input and displaying/sending values. The processor in the steps is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. Thus, these claims are directed to an abstract idea.
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the additional elements when considered both individually and as an ordered combination do not amount to significantly more than the abstract idea. The claims recite the additional limitations of “processor/device,” “receiving user input”, and “displaying/sending data”. Receiving user input and displaying/sending resulting data are pre-solution and post-solution extra-solution activities. While generic computer components recited as performing generic computer functions that are well-understood, routine and conventional activities (e.g. see references cited) amount to no more than implementing the abstract idea with a computerized system. There is no indication that the combination of elements improves the functioning of a computer or improves any other technology. Thus, taken alone or in combination, the additional elements do not amount to significantly more than the above-identified judicial exception.
Further, the additional elements found in dependent claims 2-6, 8, 10-14 and 17-19, considered both individually and as an ordered combination along their dependency trees with their respective independent claims, also do not appear to be drawn to a practical application or amount to significantly more than the abstract idea. Therefore, dependent claims 2-6, 8, 10-14 and 17-19 are similarly rejected under 35 U.S.C. 101.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-3 and 8-11 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Heer (US 2021/0041966 A1).
As for independent claim 1, Heer discloses a method comprising:
generating a user interface on a user device, the user interface including a data planning graphical control element and a set of data values [(e.g. see Heer paragraph 0029 and Fig. 1) ”FIG. 1 illustrates a representative embodiment of a graphic user interface 100 through which a user may adjust wettings. Illustrated in FIG. 1 are four points 103 104 105 106, each having distinct x 101 and y 102 coordinates, but there is no limit as to how many points may be used and fewer points may be used in some embodiments. As illustrated, a user is dragging a point 109 to increase the sensitivity of the input device. The shaded area displays a real time display of the sensitivity as the user drags the point 109 with a pointing device. Alternatively, a user can manually input each coordinate, and the graph will display the changes”].
receiving user input to modify the data planning graphical control element, the user input received at the user interface [(e.g. see Heer paragraph 0032 and Fig. 4) ”FIG. 4 illustrates an embodiment of the same graphic user interface 400 as above, but illustrated the ability for a user to “click and drag” the curve. As illustrated, a user is dragging a point 409 to move the curve”].
determining a plurality of modified data values based on the received user input [(e.g. see Heer paragraph 0017, 0032, 0049 and Figs. 4-5) ”The system automatically calculates these changes, and displays the change for the moved point 409 as numerical coordinates 404 … Any alteration to the settings of a curve will be verified by the system for validity 714 … If the change is valid, the system will update the points on the curve 715 and will recalculate the current B-spline curve 716 … The tail can be automatically calculated to match the final slope of the curve”].
generating a display on the user device of the modified data values including the modified planning control element displayed on the user interface, wherein the user interface uses the modified data values as the set of data values [(e.g. see Heer paragraph 0033 and Fig. 5) ”the system will confirm that a user is certain that changes in settings should be applied. This prevents unintended errors by a user that may render a system or input device inoperable with sensitivity settings that are inconsistent with proper function. In FIG. 5, the graphic user interface 500 is displaying points 503 504 505 506 on a curve and a dialogue box asking the user to confirm the changes to the settings 508. After the user confirms the changes, the user can them apply 509 the changes, save 510 the changes, or make the changes persistent 511 by clicking the appropriate field”].
As for dependent claim 2, Heer discloses the method as described in claim 1 and Heer further discloses:
wherein the data planning graphical control element comprises a user interface element associated with the set of data values, and wherein the user input is received on the user interface element to impact the set of data values [(e.g. see Heer paragraph 0032 and Fig. 4) ”FIG. 4 illustrates an embodiment of the same graphic user interface 400 as above, but illustrated the ability for a user to “click and drag” the curve. As illustrated, a user is dragging a point 409 to move the curve. The system automatically calculates these changes, and displays the change for the moved point 409 as numerical coordinates 404.”].
As for dependent claim 3, Heer discloses the method as described in claim 1 and Heer further discloses:
wherein the set of data values is uploaded to a data modeling platform [(e.g. see Heer paragraph 0017) ”A customized curve may be created as saved 706. Users may utilize a “save as” feature 707 to save multiple profiles or multiple settings in the same profile. Users may then save those settings to a file 708, residing locally or remotely … a remote server”].
As for dependent claim 8, Heer discloses the method as described in claim 1 and Heer further discloses;
wherein receiving the user input comprises: receiving a dragging motion on the data planning graphical control element in a direction [(e.g. see Heer paragraph 0032 and Fig. 4) ”FIG. 4 illustrates an embodiment of the same graphic user interface 400 as above, but illustrated the ability for a user to “click and drag” the curve. As illustrated, a user is dragging a point 409 to move the curve”].
As for independent claim 9, Heer discloses a system. Claim 9 discloses substantially the same limitations as claim 1. Therefore, it is rejected with the same rational as claim 1.
As for dependent claim 10, Heer discloses the system as described in claim 9; further, claim 10 discloses substantially the same limitations as claim 2. Therefore, it is rejected with the same rational as claim 2.
As for dependent claim 11, Heer discloses the system as described in claim 9; further, claim 11 discloses substantially the same limitations as claim 3. Therefore, it is rejected with the same rational as claim 3.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 4, 5, 12, 13 and 16-19 are rejected under 35 U.S.C. 103 as being unpatentable over Heer (US 2021/0041966 A1) in view of Gleich (US 11,409,990 B1).
As for dependent claim 4, Heer teaches the method as described in claim 1, but does not specifically teach wherein the plurality of modified data values is determined based on the data planning graphical control element matching a known mathematical curve. However, in the same field of invention or solving similar problems, Gleich teaches:
wherein the plurality of modified data values is determined based on the data planning graphical control element matching a known mathematical curve [(e.g. see Gleich col 3 lines 23-24) ”The data is run through a curve matching algorithm, and the result is a linear equation”].
Therefore, considering the teachings of Heer and Gleich, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add wherein the plurality of modified data values is determined based on the data planning graphical control element matching a known mathematical curve, as taught by Gleich, to the teachings of Heer because applying a machine learning algorithm simplifies the creation of a mathematical model around the dataset (e.g. see Gleich col 3 lines 10-30).
As for dependent claim 5, Heer and Gleich teach the method as described in claim 4, but Heer does not specifically teach the following limitation. However, Gleich teaches:
wherein the known mathematical curve is one of a linear, a logarithmic curve, and an exponential curve [(e.g. see Gleich col 3 lines 23-24, col 5 lines 48-53) ”The data is run through a curve matching algorithm, and the result is a linear equation … specifying the type of curve or algorithm used. In the example used in FIG. 2 this would be a linear algorithm. In other models could specify a range, a power, a logarithmic, a polynomial, an exponential, a moving average, or a linear forecast algorithms, for example. Combinations or more complicated algorithms could be specified as well”].
The motivation to combine is the same as that used for claim 4.
As for dependent claim 12, Heer teaches the system as described in claim 9; further, claim 12 discloses substantially the same limitations as claim 4. Therefore, it is rejected with the same rational as claim 4.
As for dependent claim 13, Heer and Gleich teach the system as described in claim 12; further, claim 13 discloses substantially the same limitations as claim 5. Therefore, it is rejected with the same rational as claim 5.
As for independent claim 16, Heer teaches a method comprising:
providing, by a data modeling platform, a user interface for display on a user device communicably coupled to the data modeling platform, the user interface shape including a data planning graphical control element and a set of data values [(e.g. see Heer paragraphs 0017, 0029 and Fig. 1) ”Once the graphic user interface is loaded, a main screen 702 will be displayed to the user. The user may then load a profile 703. In systems having multiple users, each user may have his or her own user settings. These user settings, associated with a user's profile … may be loaded from a remote server … FIG. 1 illustrates a representative embodiment of a graphic user interface 100 through which a user may adjust wettings. Illustrated in FIG. 1 are four points 103 104 105 106, each having distinct x 101 and y 102 coordinates, but there is no limit as to how many points may be used and fewer points may be used in some embodiments. As illustrated, a user is dragging a point 109 to increase the sensitivity of the input device. The shaded area displays a real time display of the sensitivity as the user drags the point 109 with a pointing device. Alternatively, a user can manually input each coordinate, and the graph will display the changes”].
receiving at the data modeling platform from the user device user input to define a shape of the data planning graphical control element, the user input received through the user interface [(e.g. see Heer paragraphs 0017, 0032, 0070 and Fig. 4) ”FIG. 4 illustrates an embodiment of the same graphic user interface 400 as above, but illustrated the ability for a user to “click and drag” the curve. As illustrated, a user is dragging a point 409 to move the curve … allows users to create their curve to a desired shape and size … A user may save new settings 705 through the graphic user interface 705. A customized curve may be created as saved 706. Users may utilize a “save as” feature 707 to save multiple profiles or multiple settings in the same profile. Users may then save those settings to a file 708, residing … remotely”].
generating a new set of data values based on the mathematical operation and the set of data values [(e.g. see Heer paragraph 0017, 0032, 0049 and Figs. 4-5) ”The system automatically calculates these changes, and displays the change for the moved point 409 as numerical coordinates 404 … Any alteration to the settings of a curve will be verified by the system for validity 714 … If the change is valid, the system will update the points on the curve 715 and will recalculate the current B-spline curve 716 … The tail can be automatically calculated to match the final slope of the curve”].
sending the new set of data values to the user device [(e.g. see Heer paragraphs 0017, 0033 and Fig. 5) ”sending the data for displaying real time updates to the graph … the system will confirm that a user is certain that changes in settings should be applied. This prevents unintended errors by a user that may render a system or input device inoperable with sensitivity settings that are inconsistent with proper function. In FIG. 5, the graphic user interface 500 is displaying points 503 504 505 506 on a curve and a dialogue box asking the user to confirm the changes to the settings 508. After the user confirms the changes, the user can them apply 509 the changes, save 510 the changes, or make the changes persistent 511 by clicking the appropriate field”].
Heer does not specifically teach determining a matching curve from a plurality of known curves, the matching curve associated with a mathematical operation. However, in the same field of invention or solving similar problems, Gleich teaches:
determining a matching curve from a plurality of known curves, the matching curve associated with a mathematical operation [(e.g. see Gleich col 3 lines 23-24) ”The data is run through a curve matching algorithm, and the result is a linear equation”].
Therefore, considering the teachings of Heer and Gleich, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add determining a matching curve from a plurality of known curves, the matching curve associated with a mathematical operation, as taught by Gleich, to the teachings of Heer because applying a machine learning algorithm simplifies the creation of a mathematical model around the dataset (e.g. see Gleich col 3 lines 10-30).
As for dependent claim 17, Heer and Gleich teach the method as described in claim 16 and Heer further teaches:
wherein the matching curve is determined based on the shape of the data planning graphical control element [(e.g. see Heer paragraph 0017) ”B-spline function is a combination of flexible bands that passes through the number of points that are called control points and creates smooth curves. These functions enable the creation and management of complex shapes and surfaces using a number of points. B-spline functions are applied extensively in shape optimization methods”].
As for dependent claim 18, Heer and Gleich teach the method as described in claim 16 and Heer further teaches:
wherein the new set of data values is generated based on applying the mathematical operation to each data value of the set of data values [(e.g. see Heer paragraphs 0017, 0032, 0049) ”Users may also rescale the view 709 of the curve they have created, and they may scale the graph to match specific data 710. The tail of the curve may be aligned 711 and a calculation as to the last position may be made 712. Additional points can be added to a curve 713. Any alteration to the settings of a curve will be verified by the system for validity 714. If a change is not valid, the system will redirect the user to the main screen 702. If the change is valid, the system will update the points on the curve 715 and will recalculate the current B-spline curve 716 … The system automatically calculates these changes, and displays the change for the moved point 409 as numerical coordinates 404 … The tail can be automatically calculated to match the final slope of the curve”].
As for dependent claim 19, Heer and Gleich teach the method as described in claim 16, but Heer does not specifically teach the following limitation. However, Gleich teaches:
wherein the mathematical operation comprises a linear operation, a logarithmic operation or an exponential operation [(e.g. see Gleich col 3 lines 23-24, col 5 lines 48-53) ”The data is run through a curve matching algorithm, and the result is a linear equation y=Ax−B … specifying the type of curve or algorithm used. In the example used in FIG. 2 this would be a linear algorithm. In other models could specify a range, a power, a logarithmic, a polynomial, an exponential, a moving average, or a linear forecast algorithms, for example. Combinations or more complicated algorithms could be specified as well”].
The motivation to combine is the same as that used for claim 16.
Claims 6, 7, 14 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Heer (US 2021/0041966 A1) in view of Sasikumar et al. (US 2018/0061092 A1).
As for dependent claim 6, Heer teaches the method as described in claim 1 and Heer further teaches:
wherein the data planning graphical control element comprises a curve modifier, the method further comprising: [(e.g. see Heer paragraph 0032 and Fig. 4) ”FIG. 4 illustrates an embodiment of the same graphic user interface 400 as above, but illustrated the ability for a user to “click and drag” the curve. As illustrated, a user is dragging a point 409 to move the curve”].
generating a line between at least two control points of the data planning graphical control element [(e.g. see Heer paragraphs 0017, 0043) ”small points connected by lines … 5 points connected by straight lines”].
Heer does not specifically teach determining a Bezier curve analysis based on the received user input at the curve modifier or rendering the line based on the Bezier curve analysis as the data planning graphical control element. However, in the same field of invention or solving similar problems, Sasikumar teaches:
determining a Bezier curve analysis based on the received user input at the curve modifier [(e.g. see Sasikumar paragraphs 0006, 0052, 0053) ”the handles are dragged outward away from the path of the line segments to generate arcs. View “B” represents a drawing path 606 that is created by the manipulation of the handles as indicated at 602 and 604 … For segments recognized as curved, the segments are represented as Bezier curve segments, which are parametric curves used to model paths with scalability … Resizing of a shape proportionally preserves regular arc segments included in the shape as regular arcs by resizing of the radii and lengths proportionally. If resizing is non-uniform, though, regular arc segments are converted to Bezier curve segment to enable stretching or squashing of the arc non-uniformly in accordance with the resizing”].
and rendering the line based on the Bezier curve analysis as the data planning graphical control element [(e.g. see Sasikumar paragraph 0006 and Fig. 6) ”For segments recognized as curved, the segments are represented as Bezier curve segments, which are parametric curves used to model paths with scalability”].
Therefore, considering the teachings of Heer and Sasikumar, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add determining a Bezier curve analysis based on the received user input at the curve modifier and rendering the line based on the Bezier curve analysis as the data planning graphical control element, as taught by Sasikumar, to the teachings of Heer because it allows for non-uniform stretching or squashing of an arc (e.g. see Sasikumar paragraph 0052).
As for dependent claim 7, Heer and Sasikumar teach the method as described in claim 6, but Heer does not specifically teach the following limitation. However, Sasikumar teaches:
further comprising: determining an amount of distance and a directionality of the received user input on the data planning graphical control element and determining an amount of curvature of the line based on the amount of distance and the directionality [(e.g. see Sasikumar paragraphs 0051, 0052, 0053 and Fig. 6) ”The arrows and dashed arcs at 602 and 604 represent manipulation of the handles that may occur … the radii and lengths of regular arc segments formed using the handles are controlled based on distance of the drag controls from endpoints of the regular arc segments. Moving a handle along the arc from the midpoint closer to an endpoint increases the radius … the arc may be modified by selecting and moving the handle or the endpoints. Resizing of a shape proportionally preserves regular arc segments included in the shape as regular arcs by resizing of the radii and lengths proportionally. If resizing is non-uniform, though, regular arc segments are converted to Bezier curve segment to enable stretching or squashing of the arc non-uniformly in accordance with the resizing”].
The motivation to combine is the same as that used for claim 6.
As for dependent claim 14, Heer teaches the system as described in claim 9; further, claim 14 discloses substantially the same limitations as claim 6. Therefore, it is rejected with the same rational as claim 6.
As for dependent claim 15, Heer and Sasikumar teach the system as described in claim 14; further, claim 15 discloses substantially the same limitations as claim 7. Therefore, it is rejected with the same rational as claim 7.
Claim 20 is rejected under 35 U.S.C. 103 as being unpatentable over Heer (US 2021/0041966 A1) in view of Gleich (US 11,409,990 B1), as applied to claim 16 above, and further in view of Sasikumar et al. (US 2018/0061092 A1).
As for dependent claim 20, Heer and Gleich teach the method as described in claim 16 and Heer further teaches:
further comprising: receiving, by the data modeling platform, an indication to lock in a certain data value for a control point [(e.g. see Heer paragraph 0086) ”Certain embodiments also comprise the ability to scale the entire curve or sections of a curve thought the use of locking points”].
receiving user input to flatten the shape of the data planning graphical control element, the user input received through the user interface [(e.g. see Heer paragraphs 0032, 0070) ”the ability for a user to “click and drag” the curve. As illustrated, a user is dragging a point 409 to move the curve … allows users to create their curve to a desired shape and size”].
Heer and Gleich do not specifically teach determining the new set of data values based on the certain data value and the flattened shape using Bezier curve analysis. However, in the same field of invention or solving similar problems, Sasikumar teaches:
determining the new set of data values based on the certain data value and the flattened shape using Bezier curve analysis [(e.g. see Sasikumar paragraphs 0006, 0052) ”For segments recognized as curved, the segments are represented as Bezier curve segments, which are parametric curves used to model paths with scalability … Resizing of a shape proportionally preserves regular arc segments included in the shape as regular arcs by resizing of the radii and lengths proportionally. If resizing is non-uniform, though, regular arc segments are converted to Bezier curve segment to enable stretching or squashing of the arc non-uniformly in accordance with the resizing”].
Therefore, considering the teachings of Heer, Gleich and Sasikumar, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add determining the new set of data values based on the certain data value and the flattened shape using Bezier curve analysis, as taught by Sasikumar, to the teachings of Heer and Gleich because it allows for non-uniform stretching or squashing of an arc (e.g. see Sasikumar paragraph 0052).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
U.S. PGPub 2006/0212820 A1 issued to Anderson et al. on 21 September 2006. The subject matter disclosed therein is pertinent to that of claims 1-20 (e.g. matching a best-fit curve to plotted data points which the user can interact with).
U.S. PGPub 2015/0067568 A1 issued to Lee et al. on 05 March 2015. The subject matter disclosed therein is pertinent to that of claims 1-20 (e.g. updating chart and table values using touch and drag gestures).
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRISTOPHER J FIBBI whose telephone number is (571)-270-3358. The examiner can normally be reached Monday - Thursday (8am-6pm).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, William Bashore can be reached at (571)-272-4088. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/CHRISTOPHER J FIBBI/Primary Examiner, Art Unit 2174