Browse Prior Art Database

Diluted Grammar-Aware Search in JSON files

IP.com Disclosure Number: IPCOM000236427D
Publication Date: 2014-Apr-25
Document File: 6 page(s) / 56K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for searching within a collection of JavaScript* Object Notation (JSON) files that incorporates a scoring algorithm for sorting candidate results.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 34% of the total text.

Page 01 of 6

Diluted Grammar-Aware Search in JSON files

The JavaScript* Object Notation (JSON) file format is easy for humans to read and write, and it is easy for machines to parse and generate. This data-exchanging format is now being widely used, not only for configuration files, but also for any kind of data, moving over the ground once covered by Extensible Markup Language (XML)-based techniques.

The popularity of JSON drives the necessity of appropriate development tools, including editors, parsers, automatic formatters, static analysis tools, and many other services. Integrated Development Environments (IDEs) that manage JSON-based files collections already exist. One common problem during development is the necessity to find a given entity within the collection, to eventually move the focus of the IDE to the location of said entity. Herein, this entity refers to any piece of information that is available in the content of the files collection, or an entity could be a specific file, which is identified by its name. This necessity is commonly fulfilled by "find" or "find-in-files" operations. These operations are typically provided by the IDE through hot keys such as CTRL+F.

Searching features are needed among collections of JSON files. Some existing approaches try to solve this problem, but offer solutions through a strict language that is difficult to write in a search field, compromising agility. Newer approaches can be explored, which apply diluted matching effectively to the hierarchy of the file system wherein files are stored, which resembles the hierarchy of JSON content. Diluted matching is a new approach (popular in modern IDEs) that uses a special kind of fuzzy search; it matches a user's input considering the user may have skipped some of the characters of the name of the entity for which the user is searching.

The novel contribution is a method for searching within a collection of JSON files. This method extends existing ideas that apply diluted matching to open the files by name and path, so that diluted matching algorithms are also applied to the content of the JSON files. The result is a method that allows developers to better describe the required context for the hits by leveraging interpretation of the JSON syntax in the process. In addition, the approach provides the developer the ability to define the search context within the input by similar means. By using diluted matching, the input is mostly kept in a free form, and only optionally requiring the knowledge of a few distinguished delimiter characters for more advanced features. The result is a powerful search method that leverages JSON syntax and is easy to use, requiring almost no prior knowledge.

The described search mechanism is a new variant in the typical search scenario when using IDEs (description of that entire process is outside the scope of this disclosure). This variant is accompanied by a scoring algorithm for sorting candidate results.

Additionally, t...