Roger. Greetings.
Please. Correct me, if I am wrong, or add missing information.
Reference
---------
I am not an expert; yet, I suppose, that this article be of a good
explanation.
> Declarative programming is programming that describes what you want
> to achieve, but not how to achieve it.
https://www.xml.com/articles/2018/11/27/introduction-xforms/#L292
If I realize correctly, XSLT is a set of instructions which is
free from any implementation; therefore, it can be equally utilized
with and by any computer language which is able to utilize XSLT.
Demonstration
-------------
For instance, I am creating a publication platform which is currently
implemented in Python, and it utilizes XSLT as a so-called "templating
engine". Most of the software is directed by XSLT. The only parts which
are directed by Python are "server management" and "document compilers".
In future, I intend to further disintegrate and port this software to
be utilized over any server (e.g. FTP, Gemini, HTTP) which supports
CGI; and to utilize Bash to imitate the whole process of document
creation, by executing software such as Canto, cURL, Newsboat, Pandoc,
sendxmpp, yq, xmllint, xsltproc, et cetera.
https://git.xmpp-it.net/sch/Rivista
Please. Correct me, if I am wrong.
Kind reagrds,
Schimon
On Sun, 19 Apr 2026 11:53:12 -0000
"Roger L Costello costello@xxxxxxxxx"
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> Hi Folks,
> I'll be starting a new project soon. The current system is a
> Java-based web application, and I'd like to move it toward a less
> imperative, more declarative architecture. On paper, this seems
> straightforward: use technologies like XSLT, XPath, and XQuery to
> express transformations declaratively. But I'm running into a
> practical problem. If I show Java developers their code alongside
> equivalent XSLT, I already know what the reaction will be:
>
> 1. "This is just another programming language."
> 2. "It has iteration, functions, recursion--how is this
> fundamentally different from what we already have?" 3. "Why should I
> replace code I understand with code I don't?" At that point, the
> argument that "XSLT is declarative" doesn't land. It feels like a
> theoretical distinction rather than a practical one. Which leads me
> to a more uncomfortable question: If a language is declarative, but
> most developers do not experience it as declarative, does that
> distinction actually matter? In other words, is "declarative" a
> property of the language--or of how the language is perceived and
> used? Because in practice:
>
> 1. XSLT is often written in a way that looks and feels procedural.
> 2. Developers map it mentally onto loops, conditionals, and
> function calls. 3. The promised shift in thinking ("what" rather
> than "how") never really happens. And if that's the case, then a
> proposal like: "Let's replace a Java implementation with XSLT because
> it's declarative." is unlikely to succeed--not because XSLT is weak,
> but because the benefit is not obvious to the people being asked to
> adopt it. So I'm trying to understand:
>
> 1. How do you make the declarative nature of XSLT visibly obvious
> to someone who doesn't already believe it? 2. Are there patterns,
> examples, or constraints that make XSLT clearly different from
> imperative code? 3. Or is the harder truth that some declarative
> technologies--such as schemas (e.g., XML Schema), data models, and
> rule-based systems (e.g., Schematron)--communicate their declarative
> nature more directly than others? I'm not questioning the theoretical
> classification of XSLT. I am questioning whether that classification
> is sufficient to drive adoption in real-world systems. Curious to
> hear how others have dealt with this. Best, Roger
|