2017-03-07 69 views
0

HTML与XML有什么区别?HTML与XML - 区别

我很熟悉HTML,但是我对XML的了解非常有限。

在老式的HTML我们被迫写类似:

<div> 
    <p>Hi</p> 
</div> 

换句话说,在HTML我们已经设置有限的标签。

与XML,在这里我们可以指定自己的标签:

<letter> 
    <to>John</to> 
    <from>Mike</from> 
    <date>01.01.2017<date> 
    <contents>Hi!</contents> 
</letter> 

不过,现在我有我的电脑上安装了Chrome,和它的历史页面看起来是这样的:

<body> 
    <history-app> 
    <history-router>...</history-router> 
    <history-toolbar>...</history-toolbar> 
    <div> 
     <history-side-bar>...</history-side-bar> 
     <iron-pages>...</iron-pages> 
    </div> 
    </history-app> 
</body> 

正如你可以看到,有很多标签,这些标签在HTML中不存在。

与AngularJS相同的情况下,我们可以创建自己的自定义标签。

所以我有点困惑XML和HTML在现代有什么真正的区别。

而且,也许(我不知道,因为正如我所说,我对XML的知识是非常有限的),XML提供了有关如何标记不能组织的一些规则(方案)。例如,我有一些名为“标准字母”的方案,根据此方案,标签<letter>应该总是包含标签<to><from>,而且,<to>必须是第一个。嗯...但HTML也有这样的要求。例如,<table>里面总是必须有<tr>,而<td>里面的<tr>

以前,我询问了difference between DocBook and HTML。但我也决定以新的方式重新制定它,如上所述(XML与HTML)。

+0

http://courses.cs.vt.edu/~cs1204/XML/htmlVxml。html – Pete

+0

虽然当然有一些关系(有XHTML,也是XML的HTML版本),但问题本身并不比问问巴黎和伦敦之间有什么区别更有意义。我的印象是你对某些特定的东西更感兴趣:是否可以创建自己的HTML标签。 –

+1

这个问题太广泛了,只需要一点研究就可以找到答案。两者都来自SGML,一种更通用的标记语言,所以都使用标签,属性等。除此之外,还有很多很多不同之处。 –

回答

1

HTML和XML都是标记语言,与旧的标记语言SGML有共同的遗产。

  • 使用HTML(和CSS),当你想在目标网页浏览器 演示。
  • 如果您希望为文档定义自定义标记,请使用XML。 XML 将允许文档被标记为什么内容是而不是 对于内容应该如何显示。内容然后可以从其演示文稿中分离出来,从而使内容可以自动独立转换为不同的网页或打印介质。

(并使用JSON当你想定义自定义的数据格式是data rather than document oriented。)

+0

好的,但*为什么*最好使用XML来处理文档?实际优势是什么? –

+0

回答更新以解释XML根据*什么内容是*而不是*内容应该看起来*提供标记。 – kjhughes

+0

我已经提出了您的答案,我很感激,但将内容与演示文稿分开是一种存在于* both * XML和HTML中的功能。这不是唯一的XML功能。 –