Lists Home |
Date Index |
> 6) From the stand point of business process and enterprise architecture
> - XML is an evolutionary step backwards. Hierarchical databases were
> abandoned for relational models long ago and systems made out of lots of
> little scripts gave way to more centralized object model architectures
> because centralization of business logic is more manageable. Model View
> Controller architectures were created explicitly to move the processing
> knowledge closer to the center. XML "transformations" puts us right
> back into the same position we were in when all the business rules were
> encoded in the UI and batch scripts. It disperses knowledge without any
> underlying organizing principle other than "a bunch of files".
AFAIK XSLT was developed to provide a tool for getting a presentation
of arbitrary XML easily. I used this aspect quite successfully: I run
a webapp where the same source XML document is transformed into HTML
with certain navigation elements, into "overview" HTML, or into
XSLFO/PDF for people who want it to print out for offline reading,
depending on the URL. Of course this is not the Web Service use case.
While there appear to be a lot of people who routinely implement
business logic in XSLT this does not mean it is actually a good idea.
I suspect this approach stems from the integrated DB/WebServer systems
where it is easy to get the result of a SQL query XMLified and piped
into an XSLT processor. It is tempting to intertwine stuff like
calculating price totals with putting the data into HTML tables.
One of the interesting questions is: what is business logic?
Is it business logic if article names are printed in boldface?
Is it business logic if the article number has to be printed both
as bar code at the bottom and human readable near the description?
Is it business logic if negative monetary values have to be printed
Is it business logic if long and short positions have to be printed
in different table columns?
Is it business logic if a price subtotal has to be printed after
every category of items?
Is it business logic if the percentage of securities in a portfolio
has to be printed as pie chart?
Different people may have different views on the issue: in the pie
chart case, a provider of the chart generator certainly wouldn't say
this is pure presentational, the guys calculating the percentages
might have another opinion, after all, they don't care whether it
is presented as pie chart, line chart, or as a plain old table.