Wrapper Transform for Resolving XML External Entity References
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
XML-based content management systems face issues with external entity resolution, particularly when standardized XSLT transforms generate relative links that become unresolvable when documents are accessed outside their original environment, leading to 'broken' links and requiring impractical solutions like packaging numerous documents or modifying third-party transforms.
Innovation Solution
A method involving a wrapper transform dynamically modifies the source XSLT transform to generate resolvable external entity references by converting relative paths to absolute URLs, allowing for seamless access and display of documents across different environments without altering the original transforms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If standardized XSLT transforms are used to transform XML documents, then the transformation process is simplified and standardized, but external entity references become unresolvable when documents are accessed outside their original environment
Solution Approach 1:
A catalog file is introduced as an intermediary component that maps relative paths from the standardized XSLT output to absolute URLs. The catalog file acts as a mediator between the transformation process and the external entity resolution, allowing the standardized transform to generate relative paths while the catalog provides the mapping to resolvable absolute URLs for external entities.
Solution Approach 2:
The system performs preliminary action by pre-defining the mapping between relative paths and absolute URLs in a catalog file before the transformation is executed. This allows the standardized XSLT to work with relative paths while the catalog is already prepared to resolve these paths to absolute URLs when needed, eliminating the need to modify the original standardized transform.
2Device complexity
If relative paths are used in transformed HTML output, then the transformation is simpler and follows standards, but links fail to resolve when documents are viewed in web-based CMS environments
Solution Approach 1:
The catalog file serves as an intermediary that bridges the gap between relative paths generated by simple standardized transforms and the absolute URLs needed for web-based access. This allows the transformation process to remain simple while the catalog handles the complexity of path resolution transparently.
Solution Approach 2:
The system enables self-service by allowing the standardized XSLT transform to generate relative paths without modification, while the catalog file automatically provides the resolution service. The transform doesn't need to know about web environments or absolute paths - it simply generates relative paths, and the catalog self-service mechanism handles the conversion to absolute URLs when entities are referenced.
3Reliability
If custom XSLT transforms are created to generate absolute URLs, then link resolvability is improved, but maintenance becomes difficult when original transforms are updated by external organizations
Solution Approach 1:
The solution segments the transformation system into two independent parts: the standardized XSLT transform (which remains unchanged and is maintained by external organizations) and the catalog file (which handles absolute URL mapping). This segmentation allows the transform to remain simple and standardized while the catalog independently manages the complexity of URL resolution, making maintenance easier as only the catalog needs to be updated when path mappings change.
Solution Approach 2:
The catalog file acts as an intermediary layer between the standardized transform and the external entity resolution. This allows the original standardized transform to remain unchanged and easily maintainable, while the catalog handles the adaptation to different environments. When updates are needed, only the catalog requires modification, not the core transformation logic.
4Reliability
If all referenced documents are packaged with the main document, then link resolvability is ensured, but the system complexity and storage requirements increase significantly
Solution Approach 1:
Instead of packaging all referenced documents, the catalog file serves as a lightweight intermediary that provides URL mapping information. This avoids the complexity of managing and distributing thousands of associated documents while still ensuring link resolvability through the catalog's absolute URL mappings.
Solution Approach 2:
The solution extracts only the essential path mapping information from the complex document packaging approach and stores it in a separate catalog file. This extracts the critical functionality (path resolution) from the cumbersome packaging requirement, allowing links to be resolved without actually packaging and distributing all referenced documents.
Data Source
AI summary
Embodiments of the invention provide a method, system, and article of manufacture for dynamically resolving external entity references in a document managed by a content management system (CMS). In one embodiment, a wrapper transform may be applied to a source transform to generate a modified source transform. The modified source transform may be configured to generate resolvable external entity references when applied to a document being accessed from the CMS. The modified source transform may be applied to the document being checked out to generate an output document, and the output document may be returned in response to an access request.


