Event Extraction System for Calendar Auto-Population

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data processing systems lack efficient methods for extracting and managing events from natural language descriptions and structured data, such as emails and web pages, which limits their ability to automatically populate calendars and provide relevant event suggestions.

Innovation Solution

A method that extracts events from natural language descriptions and structured data, allowing for automatic addition to a database, displaying relevant events in a calendar interface, and providing zero-word auto completion suggestions, while also processing structured data from web pages to identify candidate events and notifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If events are extracted from natural language descriptions and structured data, then event detection capability is improved, but system complexity increases

Engineering Contradiction:
Improveevent detection capabilityVSAvoidsystem complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The system divides event extraction into separate modules: a natural language processing module for extracting events from text messages and emails, and a structured data parsing module for extracting events from web pages and HTML content. This segmentation allows each module to specialize in specific data formats, improving detection capability while managing complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The event extraction system is designed to handle multiple data types universally - it can process natural language descriptions from messages and emails, as well as structured data from web pages. This multi-functionality improves event detection capability by covering diverse data sources while the unified processing approach helps manage system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Ease of operation

If automatic calendar population is implemented, then user interaction efficiency is improved, but data processing requirements increase

Engineering Contradiction:
Improveuser interaction efficiencyVSAvoiddata processing requirements
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system performs preliminary extraction and processing of event data from various sources before the user needs to manage their calendar. Events are automatically extracted from messages and web pages in advance, processed into calendar-friendly formats, and stored in a database, reducing the data processing burden during actual calendar management operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The calendar system automatically populates itself by extracting events from natural language descriptions and structured data without requiring manual user input. The system serves itself by autonomously processing and organizing event data, improving user interaction efficiency while the automated processing handles the data processing requirements in the background.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If zero-word auto completion suggestions are provided, then user convenience is improved, but search processing complexity increases

Engineering Contradiction:
Improveuser convenienceVSAvoidsearch processing complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system performs preliminary processing of extracted events and stores them in a structured database with relevant metadata. When a user accesses the calendar interface, the system pre-organizes the data so that zero-word auto completion suggestions can be generated quickly by querying pre-processed information, reducing the processing complexity required during actual suggestion generation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides more auto completion suggestions than strictly necessary by including recent events even when no search query is entered. This excessive action improves user convenience by ensuring relevant events are always visible, while the filtering and sorting mechanisms manage the processing complexity by organizing data in advance.

Inventive Principle:
Principle #16Partial or excessive action

4Reliability

If time-based event filtering is implemented, then event relevance is improved, but data storage requirements increase

Engineering Contradiction:
Improveevent relevanceVSAvoiddata storage requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system segments event data by time periods and stores only the necessary time-related information (timestamps, duration) alongside event details. This segmentation allows efficient filtering by time without requiring storage of complete historical data, improving event relevance through time-based filtering while managing data storage requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies different storage and processing qualities to different time periods - recent events are stored with full detail for immediate relevance, while older events are stored with minimal necessary information. This local quality approach improves event relevance for current operations while reducing overall data storage requirements.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12002010B2Event extraction systems and methods
Publication Date: 2024.06.04 APPLE INC
  • US12002010B2 patent drawing
  • US12002010B2 patent drawing
  • US12002010B2 patent drawing

AI summary

Events that are described in either structured data (e.g. HTML web page or email) or text in a natural language description can be extracted and entered into one or more calendars on a user's device. In one embodiment, selecting an add event command in a calendar application can cause the calendar application to search, without having received any search input, in a database of extracted events, and events extracted within a predetermined period of time can be suggested as events to add to the calendar. In one embodiment, an extracted event can cause a notification to be displayed to a user. Other embodiments are also described herein.