redhat-developer / redhat-developer/vscode-xml

XSL Transformation

Open
#254 16 comments 7 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

xsl
Dominant language
TypeScript
Stars
328
Forks
101
Avg merge
1d 17h
Merged PRs (30d)
7

Description

As you know, I'm very fond of this extension. One thing I'm still missing with it, though, is XSL transformations.

I know there are other extensions that can do XSL transformations for you. But I think it would be very neat to have it all in one place. And since this extension comes with Lemminx, which again comes with Xerces that can do XSL transformation, this shouldn't be too hard to do.
(I have been playing around with this extension, my fork can be found here. That pretty much does the trick for my personal use. But for a published extension it has the major downside of not only requiring java, but also a Saxon .jar to do the actual transformation. Again, your extension already ensures java, and it comes with Xerces.)

How do you guys feel about this?
Personally I'd love to see this feature. And once I have a bit more time (not anytime soon, I'm afraid), I'd gladly contribute to that.

(In fact I find it a bit strange that the LSP API does not have the concept of some sort of transformation... I could think of several use cases for that. And if that were the case, it would be extremely easy: The extension could request transformation from Lemminx, which could hand that over to Xerces.)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue proposes adding XSL transformations to the VS Code XML extension using its Lemminx/Xerces and Java setup, and references the vscode-xsl-transform approach. Start by reviewing the extension's existing Lemminx integration and define the transformation entry point, runtime requirements, and supported workflow. Done means the feature works without requiring a separate Saxon JAR.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, xml
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.