1. 如何進行數據建模
如何進行數據建模
正確完成建模
在過去的幾十年裡,數據建模的努力通常集中在關系數據建模或可擴展標記語言(XML)的建模上。只要數據存儲在關系資料庫中,關系數據建模就會很好,但除此之外,它很少會有其他的用途。而且XML也不能被可靠地稱為建模語言。XML是序列化數據的規范--即定義了如何將數據寫入文件。XML為構造數據的序列化提供了一種格式,但它不是一個真正的模型。
我所說的「模型」指的是以數學為基礎的形式規范。實際上,這意味著是可以使用形式化方法進行驗證的東西。通俗地說,這意味著我們可以用數學運算來證明它是正確的,並且我們可以使驗證過程自動化。而在XML模式中捕獲數據不符合此定義下的模型。但可以肯定的是,我們可以使用軟體來驗證該XML格式是否良好,是否符合一些XML模式的文檔。但這還不足以真正地對數據進行建模。
無論是計算機還是人,如果不同時理解數據的語法(結構)和語義(含義),就無法理解數據。XML可以捕獲語法,但它不能天生捕獲語義。語義可以用XML格式編寫,但是這些語義必須首先在一些更正式的建模方案中被捕獲。換句話說,企業需要一個正式的本體。這種建模方案大多基於形式邏輯,通常是公共邏輯或描述邏輯。
迄今為止,最常用的語義建模語言是基於描述邏輯的網路本體語言(OWL)。這意味著我們不僅可以正式驗證模型及其包含的數據,還可以通過對數據的推理來推斷新的事實,並且我們可以證明這些推斷的正確性。因為OWL是本體建模的事實上的標准,所以我將把剩下的內容限制在OWL上。
但是等等!所有這些都不意味著你需要將你的數據存儲為OWL。在你過於擔心如何將存儲格式強加給不情願的開發人員之前,先聽我說完。