Compound XML Document Management via Subdocument Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current repository systems face challenges in managing large XML documents, particularly in applying access control and versioning at a granularity lower than the document level, leading to inefficient handling of partial document changes and updates.
Innovation Solution
The implementation of a declarative mechanism that breaks down large documents into subdocuments linked by a parent document, allowing for finer-grained access control and versioning, using XInclude namespace for linking and compound document declarations to manage these subdocuments within a repository.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If access control is applied at the document level only, then the repository system is simple to implement, but it cannot provide fine-grained access control for different parts of large documents
Solution Approach 1:
The patent divides large XML documents into smaller subdocuments that can be independently managed and controlled. Each subdocument can have its own access control policies, allowing fine-grained control over different parts of the original document while maintaining a manageable repository structure.
Solution Approach 2:
The patent implements a nested document structure where subdocuments are contained within a parent document. This nesting allows the repository to maintain a hierarchical organization where access control can be applied at multiple levels (parent document and individual subdocuments), providing both simplicity and granularity.
2Productivity
If versioning is applied to entire documents, then the versioning mechanism is simple to implement, but it creates unnecessary overhead when only small parts of documents change
Solution Approach 1:
The patent segments documents into subdocuments that can be versioned independently. When only a small portion of a document changes, only the affected subdocument needs to be versioned rather than the entire document, significantly reducing the overhead and time required for version creation.
Solution Approach 2:
The patent applies versioning selectively to only the necessary portions of documents (partial action). Instead of versioning entire documents every time any change occurs, the system versions only the specific subdocuments that have changed, eliminating excessive versioning operations.
3Adaptability or versatility
If large XML documents are stored as single units, then storage and management is straightforward, but it is difficult to apply different access control policies for different parts of the document
Solution Approach 1:
The patent divides large XML documents into multiple subdocuments, each of which can have its own access control policies. This segmentation enables the repository to apply different access control rules to different parts of the original document while maintaining straightforward storage and management through the hierarchical structure.
Solution Approach 2:
The patent creates a multi-functional document management system where the same repository infrastructure can handle both simple single-document operations and complex multi-subdocument operations. The system universally supports various access control scenarios through its hierarchical structure without requiring separate management mechanisms.
4Productivity
If the entire document is overwritten when updating a small portion, then data consistency is maintained, but storage efficiency and update performance deteriorate
Solution Approach 1:
The patent segments documents into subdocuments that can be updated independently. When a small portion of a document needs updating, only the relevant subdocument is modified and stored, rather than overwriting the entire document. This maintains data consistency within each subdocument while significantly improving update performance and storage efficiency.
Solution Approach 2:
The patent extracts the changed portion from the original document and stores it as a separate subdocument or updates only the specific subdocument containing the changes. This extraction approach eliminates the need to store and transfer the entire document during updates, improving both performance and storage efficiency.
Data Source
AI summary
A declarative mechanism is used to manage large documents within a repository. The large documents are sectioned into subdocuments that are linked together by a parent document. The combination of the parent document and subdocument is referred to as a compound document. There are multiple options for configuring rules to break up a source document into a compound document and naming the subdocuments. The compound documents may be queried using statements that treat the compound document as a single XML document, or the parent document of a subdocument may be queried and treated independently. Access control and versioning can be applied at the finer granularity of the subdocument.


