确实
有一天,某些东西可能会取代XSLT,因为学习和使用它有点麻烦。但是,目前还没有可用的模板/转换语言afaik在其实现中具有同样的灵活性和“纯粹性”。
XSL-T可以用于多种用途:
- 您可以使用模板从数据中以HTML格式“创建”内容
- 您可以从一种xml格式转换为另一种
- 您可以将xml处理为另一种格式,也许显示一个子集
基本上所有这些都是相同的,但是,将一个XML数据文件转换为另一个。现在让我们看一下可以代替XSLT使用的一些不同工具。
如果我们想操纵一个XHTML页面的内容,我们可以使用regexp,但是regexp对于结构性的东西来说是混乱的。它对于操纵字符串很有用,但是我不会用它来为某些内容创建目录或以其他布局呈现它。
接下来是ASP.Net。我们将布局放在asp页面中,并在动态部分的后面插入一些代码。另一种选择是放弃布局部分,并从数据库生成所有内容,然后使用C#创建所需的输出。
第一种方法的问题在于,从描述性数据转换为实际内容很笨拙。如果您有一些包含电话号码的数据文件,并且要在每个字母的标题处显示,请显示条目总数nr等,您必须在布局文件中生成一些布局,并在生成的代码中拥有一些布局。另一种选择是使用某种形式的Web网格,我发现这些网格很杂乱,突然间,您必须了解当您想要做的就是在给定数据的情况下输出一些特定的html时,Frigging网格的工作方式。
完全动态化当然是一个选择,但这也很笨拙。即使在使用LINQ之类的最佳情况下,也必须以相当难看的方式将编程代码与输出混合在一起。此外,也没有适当的方法来正确处理html通常是的非结构化递归文档样式内容。
使用XSLT,您可以按原样或在其父项的上下文中为特定标签创建模板,因此,例如,如果它被其他东西作为父项,则呈现方式会有所不同。
一个漫长的漫长答案,但是是的,我认为描述性模板语言具有很大的价值,而XSLT是迄今为止获得的最好,最标准化的模板语言。