Virtual DOM Event Routing to Reduce Processing Lag

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The DOM event model requires processing through an entire document tree for event handling, leading to increased time and lag due to unnecessary processing and intervention in unrelated segments.

Innovation Solution

A system that detects events in a multi-dimensional space, routes them to specific event processors for processing, and handles them using event handlers, bypassing the standard DOM event processing path to reduce unnecessary processing and lag.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the standard DOM event model is used to process events, then event handling is comprehensive and covers all event types, but processing time increases and input lag occurs due to working through the entire document tree

Engineering Contradiction:
Improveevent handling completenessVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the event processing path by introducing a virtual DOM layer that separates event handling into distinct phases: virtual DOM event detection, virtual DOM event processing, and actual DOM event handling. This segmentation allows the system to process events in the virtual DOM without immediately traversing the entire physical DOM tree, reducing processing time while maintaining comprehensive event handling through the virtual DOM's abstraction layer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virtual DOM acts as an intermediary between user input and the actual DOM manipulation. Events are first detected and processed in the virtual DOM, which then translates these virtual events into appropriate DOM events. This intermediary layer eliminates the need to work through the entire document tree for each event, as the virtual DOM pre-processes and routes events to only the relevant DOM elements, significantly reducing processing time and input lag.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If the standard DOM event model processes events through the entire document tree, then all event paths are covered, but computing resources are wasted on unrelated segments

Engineering Contradiction:
Improveevent path coverageVSAvoidcomputing resources
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The virtual DOM implements local quality by creating a localized event processing zone that only processes events relevant to the current virtual DOM node and its children. Instead of uniformly processing the entire document tree, the system identifies and processes only the specific segment of the DOM tree affected by the event, conserving computing resources while maintaining comprehensive event path coverage through the virtual DOM's structured hierarchy.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system applies partial action by processing only the necessary portion of the event path through the virtual DOM before translating to DOM events. The virtual DOM's event propagation mechanism allows partial processing of event paths, stopping at relevant boundaries and avoiding unnecessary traversal of unrelated DOM segments, thereby reducing computing resource consumption while maintaining adequate event path coverage for all user interactions.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9772889B2Expedited processing and handling of events
Publication Date: 2017.09.26 AMAZE SOFTWARE INC
  • US9772889B2 patent drawing
  • US9772889B2 patent drawing
  • US9772889B2 patent drawing

AI summary

Various implementations for expedited processing and handling of events are described. A first event associated with a set of one or more surfaces rendered for display in a multi-dimensional space is detected. The first event is routed to a first set of one or more event processors for processing. The first event is processed using the first set of one or more event processors and after the processing, the first event is handled using one or more first event handlers.