Software Component Search Query Parsing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software component search systems are inefficient and error-prone due to the need for multiple focused queries, resulting in significant delays and potential quality and security issues in software development, as developers face the daunting task of reviewing millions of search results to find the right components.

Innovation Solution

A system that parses software component search queries using machine learning techniques to split queries into multiple entities, enhance keywords, and execute parallel searches across technology, natural language, and programming language entities, providing a more accurate and efficient search result by prioritizing relevant components.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a developer creates multiple focused queries to find unique software components, then the search precision is improved, but the time required to review results and the complexity of the search process increases significantly

Engineering Contradiction:
Improvesearch precisionVSAvoidtime to review results
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system segments a complex search query into multiple entity types (technology entities, natural language entities, programming language entities) and processes each segment through specialized parsers. This segmentation allows the system to maintain high search precision by targeting specific entity types while avoiding the need for developers to manually create multiple separate queries, thus reducing the time required to review results.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary parsing system that acts as a mediator between the developer's intent and the search engine. This intermediary automatically divides the query into focused searches across different entity types and synthesizes results, eliminating the need for developers to manually manage multiple queries and their corresponding result sets.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If a developer creates a longer query with all requirements to reduce the number of queries, then the number of queries is reduced, but the number of search results increases to millions making it hard to find the right match

Engineering Contradiction:
Improvenumber of queriesVSAvoidnumber of search results
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The system segments the search process by creating distinct parsing pathways for different entity types (technology, natural language, programming language). Each segment is processed independently with appropriate weighting, allowing the system to handle complex queries with multiple requirements while controlling the volume of results by focusing on relevant entity types rather than returning all possible matches.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by assigning different weights and processing methods to different entity types within the query. Technology entities, natural language entities, and programming language entities are handled with specialized parsers and weighting schemes, ensuring that each part of the query contributes appropriately to the final results without overwhelming the system with irrelevant matches.

Inventive Principle:
Principle #3Local quality

3Productivity

If regular expression based parsing is used to process search queries, then the parsing process is simple and fast, but the keyword usage is not enhanced and search accuracy is limited

Engineering Contradiction:
Improveparsing speedVSAvoidsearch accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system segments the parsing process into three distinct pathways: technology keyword parsing, natural language parsing, and programming language parsing. Each pathway uses appropriate techniques for its specific entity type, maintaining parsing efficiency while significantly improving search accuracy through enhanced keyword processing and entity-specific analysis.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameters of the parsing process by applying different parsing strategies and weighting schemes to different entity types. Instead of a uniform regular expression approach, the system dynamically adjusts parsing parameters based on the entity type, enhancing keyword usage and search accuracy while maintaining productivity through automated processing.

Inventive Principle:
Principle #35Parameter changes

4Adaptability or versatility

If web-crawling software is used to index textual webpage content from multiple internet sources, then the coverage of search sources is improved, but the complexity of processing and organizing the data increases

Engineering Contradiction:
Improvecoverage of search sourcesVSAvoiddata processing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the data processing complexity by creating separate parsing and processing pathways for different entity types extracted from web sources. Technology entities, natural language entities, and programming language entities are processed independently through specialized parsers, reducing the overall complexity while maintaining comprehensive coverage of multiple internet sources.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11921763B2Methods and systems to parse a software component search query to enable multi entity search
Publication Date: 2024.03.05 OPEN WEAVER INC
  • US11921763B2 patent drawing
  • US11921763B2 patent drawing
  • US11921763B2 patent drawing

AI summary

Systems and methods for parsing a software component search query to enable multi entity searches are provided. An exemplary method includes filtering a search query for unwanted characters, correcting a spelling of the search query, applying a first machine learning model to remove filter terms from the search query, parsing the query to extract entities, categorizing the entities as natural language, programming language, or keyword text, applying a second machine learning model to enhance search characteristics of the entities characterized as natural language, applying a third machine learning model to enhance search characteristics of the entities characterized as programming language, applying a fourth machine learning model to enhance search characteristics of the entities categorized as keyword text, consolidating the enhanced entities into an enhanced search query, applying a fifth machine learning model to determine intended sources for the search query, and searching the intended sources for results.