XSLT Template Processor Context Node Determination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies lack an efficient method to determine context nodes for matched templates during design-time editing of XSLT, as existing solutions do not effectively utilize the XSLT processor to map templates to context nodes, leading to difficulties in identifying which XML nodes will be processed by templates.

Innovation Solution

The proposed solution involves using an XSLT processor to add unique identifiers to data instances and templates, processing these inputs to generate an output that maps templates to context nodes, thereby providing identifying information for design-time display and ensuring accurate node processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If traditional XSLT processing is used without modifications, then the XSLT processor can process XML files according to templates, but it cannot determine context nodes for matched templates during design-time editing

Engineering Contradiction:
Improvecontext node informationVSAvoidprocessing system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by modifying the XML input file before processing to include unique identifiers (UIDs) on data instances. This pre-modification enables the XSLT processor to track and determine context nodes during design-time editing, as the UIDs are already in place to facilitate template matching and context node determination before the actual transformation occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism by adding output instructions to templates that include UID references. These output instructions act as mediators between the template matching process and the context node determination, allowing the system to capture which data instances are matched by which templates during processing, thereby enabling design-time context node identification.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If unique identifiers and output instructions are added to data instances and templates, then context nodes can be determined during design-time editing, but the processing complexity increases

Engineering Contradiction:
Improvedesign-time editing capabilityVSAvoidinput file structure complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent applies segmentation by separating the concerns of data storage and template matching. Unique identifiers are added to data instances as distinct elements, and output instructions are added to templates as separate components. This segmentation allows the XSLT processor to handle template matching and context node determination independently, improving design-time editing capability without overwhelming complexity in the core processing logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes parameters by introducing unique identifiers as a new attribute parameter for data instances and adding output instructions as a new structural parameter for templates. These parameter changes enable the system to track template matching results and determine context nodes during design-time editing, enhancing ease of operation while managing complexity through standardized parameter additions.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If the XSLT processor is modified to provide output with UID information, then accurate context node mapping is achieved, but processing time increases

Engineering Contradiction:
Improvecontext node mapping accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies self-service by designing the output instructions to automatically include UID information in the transformation output. The XSLT processor itself generates the context node mapping information as part of its normal processing workflow, without requiring external tools or post-processing steps. This self-service approach achieves accurate context node mapping while minimizing additional processing time, as the information is generated during the existing template matching process.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10180931B2Using a template processor to determine context nodes
Publication Date: 2019.01.15 ORACLE INT CORP
  • US10180931B2 patent drawing
  • US10180931B2 patent drawing
  • US10180931B2 patent drawing

AI summary

Embodiments of the current invention may include methods, systems, and products designed to utilize a template processor to determine particular data types and/or data instances that are matched to each of a number of different templates. An input file containing at least a data type/instances portion may be processed along with another input that includes templates with code for processing one or more of the data types/instances. Some of the data types/instances may have a unique identifier added to the definition and/or instantiation. Similarly, some of the templates may have code added that may cause the template processor to create an output for each data type/instance that is processed using the template. The output of the processor may then be used to indicate which of the data types/instances may be processed by each template for which the additional code was added.