DETAILED ACTION
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 . Claims 1-2, 5-18, and 20-29 are pending.
Claim Rejections - 35 USC § 112(d)
The following is a quotation of 35 U.S.C. 112(d):
(d) REFERENCE IN DEPENDENT FORMS.—Subject to subsection (e), a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers.
Claims 14 and 27 are rejected under 35 U.S.C. 112(d) or pre-AIA 35 U.S.C. 112, 4th paragraph, as being of improper dependent form for failing to further limit the subject matter of the claim upon which it depends, or for failing to include all the limitations of the claim upon which it depends.
In claims 14 and 27, applicant refers to claims canceled via amendment (claims 3 and 19, respectively), thereby failing to further limit the subject matter of the claim upon which it depends.
Applicant may cancel the claim(s), amend the claim(s) to place the claim(s) in proper dependent form, rewrite the claim(s) in independent form, or present a sufficient showing that the dependent claim(s) complies with the statutory requirements.
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.
Claims 1-2, 5-18, and 20-29 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more.
Step 1 (The Statutory Categories): Is the claim to a process, machine, manufacture or composition of matter? MPEP 2106.03.
Per Step 1, claims 1 and 16 are to a method (i.e., a process), and claims 17 and 29 to a system (i.e., a machine). Thus, the claims are directed to statutory categories of invention. However, the claims are rejected under 35 U.S.C. 101 because they are directed to an abstract idea, a judicial exception, without reciting additional elements that integrate the judicial exception into a practical application.
The analysis proceeds to Step 2A Prong One.
Step 2A Prong One: Does the claim recite an abstract idea, law of nature, or natural phenomenon? MPEP 2106.04.
The abstract idea of claim 1 is:
receiving an input comprising one or more of (i) one or more Open Source Software (OSS) components, (ii) one or more code blocks comprised in a software product, and (iii) the software product embedded with the one or more OSS components;
performing a first comparison of the input to identify a first set of matched OSS components and a first set of unidentified components, wherein attributes stored in a pre-defined format include one or more OSS component names followed by OSS component license types followed by commercial usage applicability, followed by OSS component compile permission;
performing a second comparison of the first set of unidentified components to obtain a second set of matched OSS components; and
categorizing based on licensing information, the first set of matched OSS components and the second set of matched OSS components as (i) OSS components having a strong copyleft license, (ii) OSS components having a permissive license, or (iii) OSS components having a weak copyleft license;
identifying a second set of unidentified components based on the second comparison;
generating a report based on the second set of unidentified components;
performing a third comparison of one or more unidentified components from the second set of unidentified components with one or more of (i) one or more logs of a code generation tool that generated the one or more unidentified components, and (ii) one or more associated indicators comprised therein, to obtain a first set of generated components, a second set of generated components, and a third set of unidentified components;
generating one or more of a first comprehensive report and a second comprehensive report based on the third comparison; and
detecting, during a software product development, one or more generated components suggested by the code generation tool and accepted for inclusion in the software product.
The abstract idea of claim 16 is:
receiving an input comprising one or more of (i) one or more Open Source Software (OSS) components, (ii) one or more code blocks comprised in a software product, and (iii) the software product embedded with the one or more OSS components;
performing a first comparison of the input to identify a first set of matched OSS components and a first set of unidentified components, wherein attributes stored in a pre-defined format include one or more OSS component names followed by OSS component license types followed by commercial usage applicability, followed by OSS component compile permission; and
performing a second comparison of the first set of unidentified components with a third database (DB3) comprising one or more generated components suggested by a code generation tool for inclusion in the software product and are detected during a software product development to identify one or more of a first set of generated components and a second set of unidentified components, wherein the first set of matched OSS components is categorized as (i) OSS components having a strong copyleft license, (ii) OSS components having a permissive license, or (iii) OSS components having a weak copyleft license.
The abstract idea of claim 17 is:
receive an input comprising one or more of (i) one or more Open Source Software (OSS) components, (ii) one or more code blocks comprised in a software product, and (iii) the software product embedded with the one or more OSS components;
perform a first comparison of the input to identify a first set of matched OSS components and a first set of unidentified components, wherein attributes stored in a pre-defined format include one or more OSS component names followed by OSS component license types followed by commercial usage applicability, followed by OSS component compile permission;
perform a second comparison of the first set of unidentified components to obtain a second set of matched OSS components; and
categorize based on licensing information, the first set of matched OSS components and the second set of matched OSS components as (i) OSS components having a strong copyleft license, (ii) OSS components having a permissive license, or (iii) OSS components having a weak copyleft license;
identify a second set of unidentified components based on the second comparison;
generate a report based on the second set of unidentified components;
performing a third comparison of one or more unidentified components from the second set of unidentified components with one or more of (i) one or more logs of a code generation tool that generated the one or more unidentified components, and (ii) one or more associated indicators comprised therein, to obtain a first set of generated components, a second set of generated components, and a third set of unidentified components; and
generating one or more of a first comprehensive report and a second comprehensive report based on the third comparison; and
detecting, during a software product development, one or more generated components suggested by the code generation tool and accepted for inclusion in the software product.
The abstract idea of claim 29 is:
receive an input comprising one or more of (i) one or more Open Source Software (OSS) components, (ii) one or more code blocks comprised in a software product, and (iii) the software product embedded with the one or more OSS components;
perform a first comparison of the input to identify a first set of matched OSS components and a first set of unidentified components, wherein attributes stored in a pre-defined format include one or more OSS component names followed by OSS component license types followed by commercial usage applicability, followed by OSS component compile permission; and
perform a second comparison of the first set of unidentified components comprising one or more generated components suggested by a code generation tool for inclusion in the software product and are detected during a software product development to identify one or more of a first set of generated components and a second set of unidentified components,
wherein the first set of matched OSS components is categorized as (i) OSS components having a strong copyleft license, (ii) OSS components having a permissive license, or (iii) OSS components having a weak copyleft license.
The abstract idea steps italicized above are those which could be performed mentally, including with pen and paper. The steps describe, at a high level, evaluating license type based on software components. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, including observations, evaluations, judgements, and/or opinions, then it falls within the Mental Processes – Concepts Performed in the Human Mind grouping of abstract ideas. Accordingly, the claim recites an abstract idea. (Examiner notes that software code/components could be received in text format on paper and need not necessarily be transmitted electronically.)
Additionally and alternatively, the abstract idea steps italicized above relate to the rules or instructions, communicated between parties, which govern software licensing decisions. This constitutes a process that, under its broadest reasonable interpretation, covers managing personal behavior relationships, interactions between people. This is further supported by [003] of applicant’s specification as filed. If a claim limitation, under its broadest reasonable interpretation, covers managing personal behavior relationships, interactions between people, including social activities, teaching, and/or following rules or instructions, then it falls within the Certain Methods of Organizing Human Activity – Managing Personal Behavior Relationships, Interactions Between People grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
Step 2A Prong Two: Does the claim recite additional elements that integrate the judicial exception into a practical application? MPEP 2106.04.
The claims recite the following additional elements.
Claim 1: a second database (DB2); a first database (DB1); wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata; wherein the associated indicators are interpreted by artificial intelligence (AI) methodologies.
Claim 16: a second database (DB2); a third database (DB3); wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata; wherein the code generation tool comprises one or more of a generative artificial intelligence (AI) model, a model-driven generation tool, and a grammar-driven generation tool.
Claim 17: a memory storing instructions; one or more communication interfaces; one or more hardware processors coupled to the memory via the one or more communication interfaces; a second database (DB2); a first database (DB1); wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata.
Claim 29: a memory storing instructions; one or more communication interfaces; one or more hardware processors coupled to the memory via the one or more communication interfaces; a second database (DB2); a third database (DB3); wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata; wherein the code generation tool comprises one or more of a generative artificial intelligence (AI) model, a model-driven generation tool, and a grammar-driven generation tool.
These elements are merely instructions to apply the abstract idea to a computer, per MPEP 2106.05(f). Applicant has only described generic computing elements in their specification, as seen in [069] and Fig. 1 of applicant’s specification as filed.
Further, the combination of these elements is nothing more than a generic computing system. Because the additional elements are merely instructions to apply the abstract idea to a computer, as described in MPEP 2106.05(f), they do not integrate the abstract idea into a practical application.
Therefore, per Step 2A Prong Two, the additional elements, alone and in combination, do not integrate the judicial exception into a practical application. The claim is directed to an abstract idea.
Step 2B (The Inventive Concept): Does the claim recite additional elements that amount to significantly more than the judicial exception? MPEP 2106.05.
Step 2B involves evaluating the additional elements to determine whether they amount to significantly more than the judicial exception itself.
The examination process involves carrying over identification of the additional element(s) in the claim from Step 2A Prong Two and carrying over conclusions from Step 2A Prong Two pertaining to MPEP 2106.05(f).
The additional elements and their analysis are therefore carried over: applicant has merely recited elements that facilitate the tasks of the abstract idea, as described in MPEP 2106.05(f).
Further, the combination of these elements is nothing more than a generic computing system with machine learning models. When the claim elements above are considered, alone and in combination, they do not amount to significantly more.
Therefore, per Step 2B, the additional elements, alone and in combination, are not significantly more. The claims are not patent eligible.
The analysis takes into consideration all dependent claims as well:
Dependent claims 2, 5, 7-11, 15, 18, 20, 22-24, and 28 further narrow the abstract idea with additional tasks. There are no further additional elements to consider, beyond those highlighted above. This narrowing of the abstract idea does not integrate the abstract idea into practical application or add significantly more.
Dependent claims 6, 12-14, 21, and 25-27, in addition to further narrowing the abstract idea with additional tasks, contain further additional elements, which include:
Claims 6 and 21: wherein the code generation tool comprises one or more of a generative artificial intelligence (Al) model, a model-driven generation tool, and a grammar-driven generation tool.
Claims 12 and 25: querying the second database.
Claims 13-14 and 26-27: a third database (DB3).
Similar to above, these additional elements are generic computing elements being used in an ordinary manner to facilitate the tasks of the abstract idea. Whether viewed alone or in combination, these additional elements do not integrate the abstract idea into practical application or add significantly more. See MPEP 2106.05(f).
Accordingly, claims 1-2, 5-18, and 20-29 are rejected under 35 USC § 101 as being directed to non-statutory subject matter.
Response to Arguments
Applicant's RCE submission filed 1/28/26 contains no additional remarks. However, in an effort to facilitate compact prosecution, examiner will address remarks from the 1/21/26 after final response.
Claim Objections
Applicant is thanked for their amendments overcoming the previous claim objections. These objections are withdrawn.
Claim Rejections - 35 USC § 101
Regarding the rejections under 35 USC § 101, applicant offers, after summarizing examiner’s position (tables/images omitted for brevity):
Applicant submits that the claimed subject matter integrates judicial exception in terms of improvement in functionality of the computer (MPEP §§ 2106.04(d)(1) and 2106.05(a)) i.e., storing the attributes in the second database (DB2) in pre-defined format facilities faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata. As stated in paragraphs [0080] [0081] of Applicant's published application, "In an embodiment, at least the second OSS database (DB2) has a pre-defined format comprising the attributes including OSS component name, OSS component version, OSS component home page URL, OSS component license type, OSS component license URL, OSS component attribution note, license usage type, commercial distribution permission, OSS component compile permission, license compatibility with the OSS component license type associated with other OSS components comprised in the product or compatibility with proprietary license. The pre-defined format is configured to facilitate faster retrieval of information comprised therein as compared to fetching information based on metadata”, “In an embodiment, the second OSS database (DB2) having exemplary attributes may be represented as shown in Table 2 herein below."
[…]
Applicant submit that the claimed subject matter integrates judicial exception into practical application exception in terms of improvement in functionality of the computer (MPEP §§ 2106.04(d)(1) and 2106.05(a)) i.e., detecting during software development, the generated components suggested by the code generation tool. Further, the artificial intelligence methodologies interpret indicators or text from indicators. As stated in paragraphs [0127] [0133] of Applicant's published application, "The system 100 may be trained or assisted by one or more artificial intelligence (AI) methodologies as known in the art for detecting the indicators or text from the indicators (are from the developer) and interpret the intent from the indicators or text from the indicators", "the system 100 detects (or may detect), during a software product development, one or more generated components suggested by the code generated tool and accepted for inclusion in the software product, and a third database (DB3) is populated with the one or more generated components suggested by the code generated tool”.
Applicant submit that the claimed subject matter integrates judicial exception into practical application exception in terms of improvement in functionality of the computer (MPEP §§ 2106.04(d)(1) and 2106.05(a)) i.e., hierarchically traversing with the comparison from one database to another database. Applicant submits that the first comparison of the input is with a second database DB2 to identify first set of matched OSS components and a first set of unidentified components, followed by performing a second comparison of the first set of unidentified components with a third database (DB3) comprising one or more generated components suggested by a code generation tool for inclusion in the software product.
Therefore, Applicant believes that the judicial exception is integrated into a practical application, and the claims 1-2, 5-18, 20-29 are not directed to judicial exception and is patent eligible (Step 2A: No).
While well taken, applicant’s arguments are not persuasive. Examiner first notes that applicant has appeared to conflate the abstract idea, identified at Step 2A Prong One, with the additional elements, identified at Step 2A Prong Two. Here, examiner identified an abstract idea that includes (claim 1 being representative):
receiving an input comprising one or more of (i) one or more Open Source Software (OSS) components, (ii) one or more code blocks comprised in a software product, and (iii) the software product embedded with the one or more OSS components;
performing a first comparison of the input to identify a first set of matched OSS components and a first set of unidentified components, wherein attributes stored in a pre-defined format include one or more OSS component names followed by OSS component license types followed by commercial usage applicability, followed by OSS component compile permission;
performing a second comparison of the first set of unidentified components to obtain a second set of matched OSS components; and
categorizing based on licensing information, the first set of matched OSS components and the second set of matched OSS components as (i) OSS components having a strong copyleft license, (ii) OSS components having a permissive license, or (iii) OSS components having a weak copyleft license;
identifying a second set of unidentified components based on the second comparison;
generating a report based on the second set of unidentified components;
performing a third comparison of one or more unidentified components from the second set of unidentified components with one or more of (i) one or more logs of a code generation tool that generated the one or more unidentified components, and (ii) one or more associated indicators comprised therein, to obtain a first set of generated components, a second set of generated components, and a third set of unidentified components;
generating one or more of a first comprehensive report and a second comprehensive report based on the third comparison; and
detecting, during a software product development, one or more generated components suggested by the code generation tool and accepted for inclusion in the software product.
Examiner maintains that the steps above are those that could be performed mentally, facilitated with pen and paper. The limitations of the claim are broadly recited and describe 1) receiving information; 2) performing comparisons; and 3) categorizing based on licensing information. These are steps an administrator could perform manually, and applicant’s statements to the contrary have not been persuasive.
The additional elements – e.g., a second database (DB2); a first database (DB1); wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata; wherein the associated indicators are interpreted by artificial intelligence (AI) methodologies (claim 1 being representative) – are nothing more than generically recited computing elements claimed in a results-oriented manner. MPEP 2106.05(f) is explicit that simply using generic computing devices or other machinery as a tool also amounts to no more than merely applying the abstract idea to a computer, especially when claimed in a solution-oriented manner:
(1) Whether the claim recites only the idea of a solution or outcome i.e., the claim fails to recite details of how a solution to a problem is accomplished. The recitation of claim limitations that attempt to cover any solution to an identified problem with no restriction on how the result is accomplished and no description of the mechanism for accomplishing the result, does not integrate a judicial exception into a practical application or provide significantly more because this type of recitation is equivalent to the words "apply it". See Electric Power Group, LLC v. Alstom, S.A., 830 F.3d 1350, 1356, 119 USPQ2d 1739, 1743-44 (Fed. Cir. 2016); Intellectual Ventures I v. Symantec, 838 F.3d 1307, 1327, 120 USPQ2d 1353, 1366 (Fed. Cir. 2016); Internet Patents Corp. v. Active Network, Inc., 790 F.3d 1343, 1348, 115 USPQ2d 1414, 1417 (Fed. Cir. 2015). In contrast, claiming a particular solution to a problem or a particular way to achieve a desired outcome may integrate the judicial exception into a practical application or provide significantly more. See Electric Power, 830 F.3d at 1356, 119 USPQ2d at 1743.
[…]
(2) Whether the claim invokes computers or other machinery merely as a tool to perform an existing process. Use of a computer or other machinery in its ordinary capacity for economic or other tasks (e.g., to receive, store, or transmit data) or simply adding a general purpose computer or computer components after the fact to an abstract idea (e.g., a fundamental economic practice or mathematical equation) does not integrate a judicial exception into a practical application or provide significantly more. See Affinity Labs v. DirecTV, 838 F.3d 1253, 1262, 120 USPQ2d 1201, 1207 (Fed. Cir. 2016) (cellular telephone); TLI Communications LLC v. AV Auto, LLC, 823 F.3d 607, 613, 118 USPQ2d 1744, 1748 (Fed. Cir. 2016) (computer server and telephone unit). Similarly, "claiming the improved speed or efficiency inherent with applying the abstract idea on a computer" does not integrate a judicial exception into a practical application or provide an inventive concept. Intellectual Ventures I LLC v. Capital One Bank (USA), 792 F.3d 1363, 1367, 115 USPQ2d 1636, 1639 (Fed. Cir. 2015). In contrast, a claim that purports to improve computer capabilities or to improve an existing technology may integrate a judicial exception into a practical application or provide significantly more. McRO, Inc. v. Bandai Namco Games Am. Inc., 837 F.3d 1299, 1314-15, 120 USPQ2d 1091, 1101-02 (Fed. Cir. 2016); Enfish, LLC v. Microsoft Corp., 822 F.3d 1327, 1335-36, 118 USPQ2d 1684, 1688-89 (Fed. Cir. 2016). See MPEP §§ 2106.04(d)(1) and 2106.05(a) for a discussion of improvements to the functioning of a computer or to another technology or technical field.
In this case, “wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata” and “wherein the associated indicators are interpreted by artificial intelligence (AI) methodologies” provide nothing more than a results-oriented solution that lacks detail of the mechanism for accomplishing the result and is equivalent to the words “apply it,” per MPEP 2106.05(f).
Accordingly, the additional elements do not integrate the abstract idea into practical application at Step 2A Prong Two. This conclusion holds whether the additional elements are viewed alone or in combination.
Applicant continues, regarding Step 2B:
Applicant asserts that the claimed subject achieves significantly more in terms of faster retrieval of information from the second database (DB2) owing to the nature of storing details of OSS components in a pre-defined format i.e., one or more OSS component names followed by license usage types (refer Table 2) (Emphasis added).
Applicant asserts that the claimed subject achieves significantly more in terms of providing assistance by AI generated methodologies for detecting indicators or text from indicators and then interpret intent from the indicators or text from the indicators (refer paragraph [0127]) (Emphasis added). As stated in paragraph [0128] of Applicant's published application, "The code generation tool comprises at least one of a generative artificial intelligence (AI) model, a model- driven generation tool, and a grammar-driven generation tool. Examples of such tools or models may comprise, but are not limited to, (i) Model-Driven Development (MDD) tool, (ii) Template, Rule, Grammar or Annotation based generation tool, (iii) Domain-Specific Language (DSL) based generators, (iv) Application Builders and Low Code No Code platforms, (v) Generative AI and Code Completion technologies,(vi) Code synthesis from Diagrams, (vii) Code scaffoldings & Frameworks, and so on".
Therefore, taking all the claim elements individually, or in combination, the claim as a whole amounts to "significantly more" than an abstract idea of itself (Step 2B: Yes).
Examiner notes that the determination made at Step 2B was informed by MPEP 2106.05, subsection II, which recites:
Although the conclusion of whether a claim is eligible at Step 2B requires that all relevant considerations be evaluated, most of these considerations were already evaluated in Step 2A Prong Two. Thus, in Step 2B, examiners should:
Carry over their identification of the additional element(s) in the claim from Step 2A Prong Two;
Carry over their conclusions from Step 2A Prong Two on the considerations discussed in MPEP §§ 2106.05(a) - (c), (e) (f) and (h);
Re-evaluate any additional element or combination of elements that was considered to be insignificant extra-solution activity per MPEP § 2106.05(g), because if such re-evaluation finds that the element is unconventional or otherwise more than what is well-understood, routine, conventional activity in the field, this finding may indicate that the additional element is no longer considered to be insignificant; and
Evaluate whether any additional element or combination of elements are other than what is well-understood, routine, conventional activity in the field, or simply append well-understood, routine, conventional activities previously known to the industry, specified at a high level of generality, to the judicial exception, per MPEP § 2106.05(d).
As seen in the second bullet point above, examiner “carried over” the conclusions pertaining to Step 2A Prong Two. In the instant application, the additional elements – e.g., a second database (DB2); a first database (DB1); wherein the attributes stored in the pre-defined format facilitates faster retrieval of information comprised in the DB2 as compared to fetching information based on metadata; wherein the associated indicators are interpreted by artificial intelligence (AI) methodologies (claim 1 being representative) – are nothing more than generically recited computing elements claimed in a results-oriented manner. MPEP 2106.05(f) is explicit that simply using generic computing devices or other machinery as a tool also amounts to no more than merely applying the abstract idea to a computer, especially when claimed in a solution-oriented manner.
Accordingly, examiner maintains that the additional elements do not add significantly more. This conclusion holds whether the additional elements are viewed alone or in combination.
Therefore, the examiner maintains the rejections under 35 USC § 101.
Claim Rejections - 35 USC § 103
Regarding the rejections under 35 USC § 103, applicant clarifying remarks and amendments are persuasive. These rejections have been withdrawn.
With respect to claims 1 and 17, Weigert, considered the closest prior art and most relevant for applicant’s amendments, does not provide both matched OSS components and unidentified components as disclosed in the claimed subject matter. Specifically, while Weigert may determine whether software actually includes undocumented and/or improperly documented source code, it does not provide both matched OSS components and unidentified components in the manner claimed:
identifying a second set of unidentified components based on the second comparison; generating a report based on the second set of unidentified components;
performing a third comparison of one or more unidentified components from the second set of unidentified components with one or more of (i) one or more logs of a code generation tool that generated the one or more unidentified components, and (ii) one or more associated indicators comprised therein, to obtain a first set of generated components, a second set of generated components, and a third set of unidentified components, wherein the associated indicators are interpreted by artificial intelligence (AI) methodologies;
generating one or more of a first comprehensive report and a second comprehensive report based on the third comparison; and
detecting, during a software product development, one or more generated components suggested by the code generation tool and accepted for inclusion in the software product.
With respect to claims 16 and 29, Ouali, considered the closest prior art and most relevant for applicant’s amendments, is contextually different from the claimed subject matter, since (1) the nature of code generation tool in the claimed subject matter includes a Gen AI model, model-driven generation tool, or grammar driven generation tool; and (2) suggestions of generated components are not provided in the manner claimed:
perform a second comparison of the first set of unidentified components with a third database (DB3) comprising one or more generated components suggested by a code generation tool for inclusion in the software product and are detected during a software product development to identify one or more of a first set of generated components and a second set of unidentified components, wherein the code generation tool comprises one or more of a generative artificial intelligence (AI) model, a model-driven generation tool, and a grammar-driven generation tool,
wherein the first set of matched OSS components is categorized as (i) OSS components having a strong copyleft license, (ii) OSS components having a permissive license, or (iii) OSS components having a weak copyleft license.
In an updated search, examiner identified the following references, which, while generally relevant to the field of endeavor, stop short of the specificity of the claim:
US 20060155711, which teaches: The present invention relates to a method, system and software for management of software product licences. More particularly, a method of analysing software product licence data is disclosed. The software product licence data is received from a sales database. The data is then collated into an analysis database and an analysis of the data from the analysis database is displayed. Additional information for the analysis database may be provided by assessment of a licence ownership position for a customer, and determination of an appropriate licence agreement for a customer. User interface methods for selecting a software product of a vendor, linking two company names, and displaying linked company names are also disclosed.
US 20100242028, which teaches: A system and method is provided for performing code provenance review in a software due diligence system. In particular, performing code provenance review may include sub-dividing source code under review and third-party source into logical fragments using a language-independent text fracturing algorithm. For example, the fracturing algorithm may include a set of heuristic rules that account for variations in coding style to create logical fragments that are as large as possible without being independently copyrightable. Unique fingerprints may then be generated for the logical fragments using a fingerprint algorithm that features arithmetic computation. As such, potentially related source code may be identified if sub-dividing the source code under review and the third-party source code produces one or more logical fragments that have identical fingerprints.
US 20120166300, which teaches: Management of software licenses in a client-server mode starts with a license policing based on clustering, nominally, into differently valued bundles many variegated applications to be licensed. Applications have an initial size which can be upgraded on request. The size may encompass a variable number of different entities. Two management processes run concurrently at the server side: a first one is dedicated to distribute licenses for new software applications and licenses for upgrading to new versions of previously licensed applications, and further checking any attempt to violate a software license; a second one, upon reception of specific requests by licensees, calculates the number of credits which are needed for upgrading the size previously licensed for applications, checks that available credits at the requesters be sufficient for upgrading, otherwise sends back a warning for insufficient credits.
Accordingly, the rejections under 35 USC § 103 are withdrawn.
In summary, examiner has responded to all of applicant’s arguments.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
US 20060155711, which teaches: The present invention relates to a method, system and software for management of software product licences. More particularly, a method of analysing software product licence data is disclosed. The software product licence data is received from a sales database. The data is then collated into an analysis database and an analysis of the data from the analysis database is displayed. Additional information for the analysis database may be provided by assessment of a licence ownership position for a customer, and determination of an appropriate licence agreement for a customer. User interface methods for selecting a software product of a vendor, linking two company names, and displaying linked company names are also disclosed.
US 20100242028, which teaches: A system and method is provided for performing code provenance review in a software due diligence system. In particular, performing code provenance review may include sub-dividing source code under review and third-party source into logical fragments using a language-independent text fracturing algorithm. For example, the fracturing algorithm may include a set of heuristic rules that account for variations in coding style to create logical fragments that are as large as possible without being independently copyrightable. Unique fingerprints may then be generated for the logical fragments using a fingerprint algorithm that features arithmetic computation. As such, potentially related source code may be identified if sub-dividing the source code under review and the third-party source code produces one or more logical fragments that have identical fingerprints.
US 20120166300, which teaches: Management of software licenses in a client-server mode starts with a license policing based on clustering, nominally, into differently valued bundles many variegated applications to be licensed. Applications have an initial size which can be upgraded on request. The size may encompass a variable number of different entities. Two management processes run concurrently at the server side: a first one is dedicated to distribute licenses for new software applications and licenses for upgrading to new versions of previously licensed applications, and further checking any attempt to violate a software license; a second one, upon reception of specific requests by licensees, calculates the number of credits which are needed for upgrading the size previously licensed for applications, checks that available credits at the requesters be sufficient for upgrading, otherwise sends back a warning for insufficient credits.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JOHN SAMUEL WASAFF whose telephone number is (571)270-5091. The examiner can normally be reached Monday through Friday 8:00 am to 6:00 pm.
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, SARAH MONFELDT can be reached at (571) 270-1833. 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.
JOHN SAMUEL WASAFF
Primary Examiner
Art Unit 3629
/JOHN S. WASAFF/Primary Examiner, Art Unit 3629