# XSLT.jl: transform XML documents using XSLT stylesheets

**URL:** https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991
**Category:** Package Announcements
**Tags:** question, package, xml, xslt\_jll
**Created:** [January 15, 2023, 12:53pm UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991 "2023-01-15T12:53:30Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![rvezy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rvezy/32/17435_2.png) [@rvezy](https://discourse.julialang.org/u/rvezy)
#### Post date: [January 15, 2023, 12:53pm UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991/1 "2023-01-15T12:53:31Z")

</div>

This weekend I developed [XSLT.jl](https://github.com/VEZY/XSLT.jl), a package to transform XML documents to any other document type using XSLT stylesheets. This is a Julia wrapper for the [libxslt](http://xmlsoft.org/libxslt/) library, which was already somewhat present in [JuliaBinaryWrappers](https://github.com/JuliaBinaryWrappers) / **[XSLT\_jll.jl](https://github.com/JuliaBinaryWrappers/XSLT_jll.jl)**.

I took inspiration from [ropensci](https://github.com/ropensci) / **[xslt](https://github.com/ropensci/xslt)** for the tests and the function name.

The package is not registered, because I’m not sure that it should yet. Because maybe it should be under [JuliaIO · GitHub](https://github.com/JuliaIO) ? Or maybe integrated to [GitHub - JuliaIO/EzXML.jl: XML/HTML handling tools for primates](https://github.com/JuliaIO/EzXML.jl) or [GitHub - JuliaIO/LightXML.jl: A light-weight Julia package for XML based on libxml2.](https://github.com/JuliaIO/LightXML.jl) ? The benefit of being a separate package is that it is compatible with both.

If I have no recommendations until next week, I will register the package as is.

---

<div class="post-metadata">

### Author: ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)
#### Post date: [January 15, 2023, 7:25pm UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991/2 "2023-01-15T19:25:00Z")

</div>

I recommend registering it since this js of general utility. It can always be moved later.

If you would like to move it now though, we can also work on that.

---

<div class="post-metadata">

### Author: ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)
#### Post date: [January 15, 2023, 9:57pm UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991/3 "2023-01-15T21:57:18Z")

</div>

Nice, this might come in really handy for a recent project of mine. I was actually looking for a package that does this not long ago, so thanks!

---

<div class="post-metadata">

### Author: ![rvezy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rvezy/32/17435_2.png) [@rvezy](https://discourse.julialang.org/u/rvezy)
#### Post date: [January 16, 2023, 8:13am UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991/4 "2023-01-16T08:13:22Z")

</div>

As you want. I don’t know what’s usually done in that regard.

---

<div class="post-metadata">

### Author: ![rvezy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rvezy/32/17435_2.png) [@rvezy](https://discourse.julialang.org/u/rvezy)
#### Post date: [January 16, 2023, 8:28am UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991/5 "2023-01-16T08:28:42Z")

</div>

Glad to help ! Please tell me if there’s any issue.

I tried to be careful about memory management, but I didn’t know how to wrap a library before Saturday so maybe there’s still some bugs. Also it doesn’t run on Windows yet, because some functions are somewhat not available in the libxslt build for windows… See the issue here [CI does not work on windows · Issue #1 · VEZY/XSLT.jl · GitHub](https://github.com/VEZY/XSLT.jl/issues/1)  
I’ll try to find access to a windows machine soon.

---

<div class="post-metadata">

### Author: ![rvezy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rvezy/32/17435_2.png) [@rvezy](https://discourse.julialang.org/u/rvezy)
#### Post date: [January 18, 2023, 9:11am UTC](https://discourse.julialang.org/t/xslt-jl-transform-xml-documents-using-xslt-stylesheets/92991/6 "2023-01-18T09:11:11Z")

</div>

Fixed the issue on windows, the package is now ready for registration 🙂  
I’ll register from where it is, and move it in the future if there’s a need for that.
