DOM Differential Generation via Node Change Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technologies lack the capability to generate a Document Object Model (DOM) differential from a base DOM of a webpage based on user interactions, only capturing full DOM snapshots without tracking changes effectively.
Innovation Solution
A method is developed to generate a DOM differential by capturing a base DOM snapshot, monitoring changes, and recording DOM node and attribute changes using a recorder, which identifies and consolidates the minimal set of changes caused by user and script interactions, utilizing mechanisms like MutationObserver API to track DOM changes and generate lists of node and attribute changes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If full DOM snapshots are captured to track webpage changes, then complete change information is obtained, but data volume and processing complexity increase significantly
Solution Approach 1:
The patent extracts only the changed portions (differences) from the complete DOM snapshot by comparing the base DOM with the current DOM. Instead of capturing and transmitting the entire DOM structure, it identifies and records only the specific nodes and attributes that have changed, thereby reducing data volume while preserving complete change information.
Solution Approach 2:
The patent segments the DOM change tracking into distinct components: node changes (additions, deletions, modifications) and attribute changes. By dividing the change detection into these segments, it can efficiently track and report only the specific changes that occurred rather than processing the entire DOM structure.
2Loss of information
If full DOM snapshots are captured to track webpage changes, then complete change information is obtained, but processing time and computational resources increase
Solution Approach 1:
The patent extracts only the changed portions from the complete DOM snapshot by comparing base DOM with current DOM. Instead of processing and transmitting the entire DOM structure, it identifies and records only the specific nodes and attributes that have changed, thereby reducing processing time while preserving complete change information.
Solution Approach 2:
The patent applies partial action by performing change detection only on the portions of the DOM that have actually changed rather than re-processing the entire DOM structure. This approach reduces computational overhead and processing time while still capturing all necessary change information.
3Measurement precision
If DOM monitoring is implemented to track changes, then change detection capability is improved, but system complexity increases
Solution Approach 1:
The patent introduces a DOM differential generator as an intermediary component that sits between the base DOM and the change detection mechanism. This intermediary processes the DOM changes and generates a simplified differential representation, improving change detection capability while managing system complexity through modular design.
4Quantity of substance
If incremental changes are tracked instead of full snapshots, then data volume is reduced, but change information completeness may be compromised
Solution Approach 1:
The patent extracts only the changed portions from the complete DOM snapshot by comparing base DOM with current DOM. Instead of capturing and transmitting the entire DOM structure, it identifies and records only the specific nodes and attributes that have changed, thereby reducing data volume while preserving complete change information.
Solution Approach 2:
The patent implements a feedback mechanism where the DOM differential generator continuously monitors and compares the base DOM with the current DOM state. This feedback loop ensures that all changes are captured and reported accurately, maintaining change information completeness even when tracking only incremental changes.
Data Source
AI summary
Generating a document object model (DOM) differential is provided. In response to receiving a webpage, a snapshot is generated of a base DOM corresponding to the webpage. A DOM node change list corresponding to the base DOM is generated. A DOM node attribute change list corresponding to the base DOM is generated. The base DOM is monitored for changes. A DOM differential is generated for the base DOM based on DOM node entries in the DOM node change list and the DOM node attribute change list.


