首頁技術(shù)文章正文

什么是約束?如何理解約束?

更新時(shí)間:2020-12-29 來源:黑馬程序員 瀏覽量:

1577370495235_學(xué)IT就到黑馬程序員.gif

什么是約束?在現(xiàn)實(shí)生活中,如果一篇文章的語法正確,但內(nèi)容包含了違法言論或邏輯錯(cuò)誤,這樣的文章是不允許發(fā)表的。同樣,在書寫XML文檔時(shí),其內(nèi)容必須滿足某些條件的限制,先來看一個(gè)例子,具體如下:

<?xml version="1.0" encoding="gb2312"?><書架>
    <書>
        <書名>Java就業(yè)培訓(xùn)教程</書名>
        <作者 姓名="張孝祥"/>
        <售價(jià) 單位="元">38</售價(jià)>
        <售價(jià) 單位="元">28</售價(jià)>
    </書></書架>


在上面的示例中,盡管這個(gè)XML文檔結(jié)構(gòu)是正確的,用IE瀏覽器打開它也不會(huì)出現(xiàn)任何問題,但是,由于XML文檔中的標(biāo)記是可以隨意定義的,同一本書可以出現(xiàn)兩種售價(jià),如果僅僅根據(jù)標(biāo)記名稱區(qū)分哪個(gè)是原價(jià),哪個(gè)是會(huì)員價(jià),這是很難實(shí)現(xiàn)的。為此,在XML文檔中,定義了一套規(guī)則來對文檔中的內(nèi)容作出限制約束,這套約束稱為XML約束。

對XML文檔進(jìn)行約束時(shí),同樣需要遵守一定的語法規(guī)則,這種語法規(guī)則就形成了XML約束語言,目前,最常用的兩種約束語言是DTD約束和Schema約束。


猜你喜歡:
kubernetes原理和安裝教程

分布式鎖是什么?有什么作用?

什么是Master選舉?ZooKeeper在集群Master選舉中應(yīng)用

什么是哈希?哈希算法是怎么回事?
黑馬程序員Java培訓(xùn)課程



分享到:
在線咨詢 我要報(bào)名
和我們在線交談!