首页 > 解决方案 > 除了样式之外,还有其他用于级联数据的语言语法吗?

问题描述

而 CSS 只能设置样式,主要用于 HTML。我认为应该可以使用选择器和级联的概念将值应用于 xml 属性

这种概念是否有任何标准化或建议的语法?

标签: csssyntaxcascading

解决方案


听起来您在想象一个包含 XML 文档的文件,另一个包含具有值的属性块的文件,每个块都以某种“选择器”开头,该“选择器”定义了这些属性适用于哪些 XML 元素(很像 CSS ,甚至可能使用相同的语法)。然后,您正在想象一个过程,该过程通过根据为该选择器声明的属性修改所选 XML 元素的属性来转换 XML 文档。

基于补充规则集转换 XML 的一般概念称为可扩展样式表语言转换 (XSLT)

更具体地说,与使用选择器和类似 CSS 的语法定义属性有关,万维网联盟已于 2010 年发布了 W3C 推荐标准“ Associating Style Sheets with XML documents ”。该文档为正在执行 XSLT 的软件开发人员提供了建议。 XML 并希望关联影响选择器应用的元素转换的 CSS 语法属性。

使用 XML 的应用程序负责以这种方式实现对 XML 样式表的支持——它不是语言的核心部分。大多数现代 Web 浏览器都可以执行 XML-to-HTML XSLT,并且许多使用上述 W3C 建议中描述的语法支持 XML 样式表。出于类似的原因,在浏览器中呈现时,CSS 也可以直接应用于 SVG 文件(一种 XML 格式)。

当使用通用 XML 而不是 XHTML 时,推荐的语法要简单得多,只对选择器提供基本支持。

可以应用 W3C 指南以使用类似 CSS 的语法来定义应用于 XML 文档中选定元素的属性,然后根据这些属性实现转换以影响最终的 XML。一些 XML 库,特别是 XSLT 实现,可能会提供可扩展的机制来简化此操作,但最终您需要自己实现转换。


推荐阅读