标记语言 java_软件工程05-标记语言Markup Language

TeX, PostScript, SGML, HTML, XML, XHTML……它们都是标记语言。

计算机语言的分类

计算机语言表示数据或计算,大概分几类。通用语言General Purpose Languages(Java、Python...)

特定于域的语言Domain Specific Languages(XML、HTML、TeX、后脚本、SQL)

数据语言Data Languages(JSON、YAML)

Rule of Least Power:

对于已知的特定目的,语言能力贵在够用而不是功能强大。

语言的表达能力

理论(图灵完整性)

实用(简洁、详细)

表达数据:

可以自我描述(元数据作为数据的一部分)

非自我描述格式。例如 XDR

根据包含的数据特点,分以下两类。

结构化数据,如JSON、 YAML 、 XML。

非结构化/半结构化数据,即标记语言(在文档中传达元数据的方法)。

标记语言(Markup)类型

表示Presentational/标点Punctuational Markup:使用标点符号、缩进、空格等内容来表示文档。

过程Procedural Markup:在文档中包含一些说明,这些说明用于向程序解释如何打印/显示文档。

描述性Descriptive Markup:与文档的逻辑结构相关,不一定与表示/显示相关。

SGML (Standard Generalized Markup Language, 标准通用标记语言)

有“用尖括号包起来的标签Angular tags”

树形结构

元素具有开始/关闭标签和内容(例如HTML里的

Content

)

在tag中可以包含“属性名称/值”组成的配置对

文档类型定义(Document Type Definition, DTD)定义SGML应用程序的有效元素和属性,这对文档验证的应用/使能的标准化有所帮助。DTD样例:

超文本标记语言

Hypertext Markup Language, HTML

SGML的一个应用,用于Web的标记语言,属于Domain Specific Language(DSL),有预定的tag集,用于表示外观和结构。能容忍类似大写、缺少开始或结束tag的错误。

eXtensible Markup Language, XML 可扩展的标记语言

20世纪90年代的浏览器战争导致HTML需要进一步标准化,XML应运而生。

注意XML大小写敏感,所有的Tag必须有开始有结束

注意<>和&这些符号是保留字,需要用转义字符。

XML可以作为软件的配置和数据文件,如Maven项目里的pom.xml,用DOM API解析XML,但DOM API是先把数据在内存里复现出来,所以如果XML文件很大,可以换用SAX分析器。

Markdown

一种轻量级的标记语言。

JSON

语法格式:

AttributeName{

"Course" : "Software Engineering", "Year" : [2020, 2021], "Offered" : true

}

解析方法:

String course = JSON.parse("Course");  // In Java

YAML

JSON的一个超集。语法有点像Python:

Name: Four_Bit_Dec_Adder

Notes:

- LaTex

- Software Engineering

更多关于各类标记语言的教程在网上可以随手找到一堆,在此不做赘述。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值