什么是 DSL?
领域特定语言(英语:domain-specific language、DSL)指的是专注于某个应用程序领域的计算机语言。又译作领域专用语言。不同于普通的跨领域通用计算机语言(GPL),领域特定语言只用在某些特定的领域。 比如用来显示网页的HTML,以及Emacs所使用的Emac LISP语言。
什么是 XML?
可扩展标记语言 (Extensible Markup Language, XML) ,标准通用标记语言的子集,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
XML就是一种DSL
自定义一个 XML 来描述邮件,可以自定义标签和属性。
<!-- 用 XML 描述一封邮件,可以自定义标签和属性 --> <mail> <to>123@qq.com</to> <form>789@qq.com</from> <title color="red">邮件标题</title> <body>邮件标题</body> </mail>
用 xml 描述这个流程图
<chart> <start-end id="start">开始</start-end> <flow id="flow1">流程1</flow> <judge id="judge1">评审</judge> <flow id="flow2">流程2</flow> <start-end id="end">结束</start-end> <arrow from="start" to="flow1"></arrow> <arrow from="flow1" to="judge1"></arrow> <arrow from="judge1" to="flow2">Y</arrow> <arrow from="judge1" to="end">N</arrow> <arrow from="flow2" to="end"></arrow> </chart> <!-- 另,每个节点还可以加上 x y 的定位信息,尺寸,边框 -->