畢仁敏,張歡,王明,袁亞雄,艾楠竹
(1.武漢市測繪研究院,湖北 武漢 430022;2.中鐵第四勘察設(shè)計院集團(tuán)有限公司,湖北 武漢 430063)
為保障不動產(chǎn)登記工作順利開展,建成空間參考一致、數(shù)據(jù)關(guān)聯(lián)正確、歷史信息完整的不動產(chǎn)登記數(shù)據(jù)庫[1],武漢市中心城區(qū)青山區(qū)和武昌區(qū)自2018年起開展不動產(chǎn)登記存量數(shù)據(jù)清理整合工作。清理對象為2016年兩區(qū)開展不動產(chǎn)統(tǒng)一登記之前,原國土和房產(chǎn)管理部門形成的各類不動產(chǎn)登記系統(tǒng)數(shù)據(jù)和歷史檔案,具體包括青山區(qū)和武昌區(qū)的國有建設(shè)用地使用權(quán)登記、房屋所有權(quán)登記以及土地和房屋抵押、查封登記的業(yè)務(wù)屬性數(shù)據(jù)、空間圖形數(shù)據(jù)和影像檔案數(shù)據(jù)[2]。
清理整合后的不動產(chǎn)登記存量數(shù)據(jù)需滿足入庫要求方能入庫,以確保數(shù)據(jù)庫屬性數(shù)據(jù)、圖形數(shù)據(jù)、圖像數(shù)據(jù)的準(zhǔn)確關(guān)聯(lián)和內(nèi)容一致,保證數(shù)據(jù)具有完整性、唯一性和準(zhǔn)確性,能滿足不動產(chǎn)統(tǒng)一登記的需求[3]。清理整合后,屬性數(shù)據(jù)存在屬性字段填寫不規(guī)范、值域范圍不符合、必填字段值缺失、表內(nèi)業(yè)務(wù)邏輯關(guān)聯(lián)不一致、表間邏輯關(guān)聯(lián)不一致等錯誤;空間圖形數(shù)據(jù)存在自相交、重疊、未封閉等拓?fù)潢P(guān)系問題[4],因此需要開展數(shù)據(jù)全面檢查工作。前期投入了大量的人力進(jìn)行人工檢查,但由于數(shù)據(jù)量大、檢查項(xiàng)多,傳統(tǒng)的人工檢查耗時費(fèi)力、事倍功半,還可能導(dǎo)致成果數(shù)據(jù)被錯誤編輯修改等問題,數(shù)據(jù)檢查工作出現(xiàn)不斷返工的情況。因此,探索一種準(zhǔn)確高效開展數(shù)據(jù)檢查的技術(shù)方法迫在眉睫。
SQL語言在數(shù)據(jù)庫查詢和修改中應(yīng)用廣泛,F(xiàn)ME在空間圖形和屬性數(shù)據(jù)處理中功能強(qiáng)大,兩種技術(shù)均適用于數(shù)據(jù)對象的屬性檢查和空間檢查。本文探討了這兩種技術(shù)在數(shù)據(jù)檢查實(shí)踐工作中的具體應(yīng)用,分析了其應(yīng)用效果和特點(diǎn),以期為數(shù)據(jù)檢查工作提供借鑒。
土地登記電子數(shù)據(jù)和房屋登記電子數(shù)據(jù)共計180萬條,通過數(shù)據(jù)清洗分類、查檔補(bǔ)檔、統(tǒng)一編號、數(shù)據(jù)整合和數(shù)據(jù)建庫等步驟,形成了屬性信息較完整規(guī)范、準(zhǔn)確、關(guān)聯(lián)基本正確的數(shù)據(jù)成果。屬性數(shù)據(jù)庫成果表單共計22張,包括宗地基本信息表(ZDJBXX)、自然幢表(ZRZ)、界址線表(JZX)、界址點(diǎn)表(JZD)、戶表(H)等空間屬性信息表,獨(dú)立宗建設(shè)用地使用權(quán)表(JSYDSYQ_DLZ)、共用宗建設(shè)用地使用權(quán)表(JSYDSYQ_GYZ)、房地產(chǎn)權(quán)表(FDCQ2)、抵押權(quán)表(DYAQ)、查封登記表(CFDJ)等主表,登記信息表(DJXX)、預(yù)告登記表(YGDJ)、權(quán)利人表(QLR)、義務(wù)人表(YWR)以及發(fā)證表(FZ)、歸檔表(GD)、收件表(SJ)、收費(fèi)表(SF)、申請人表(SQR)、審核表(SH)、繕證表(SZ)、發(fā)證表(FZ)等8張業(yè)務(wù)審批表。其中,登記信息表記錄了房產(chǎn)的登記業(yè)務(wù)信息,包括房地產(chǎn)、房產(chǎn)查封、房產(chǎn)抵押的登記信息。
屬性數(shù)據(jù)成果存在的主要問題包括:①值域范圍不符合,字段值不在數(shù)據(jù)字典表范圍內(nèi);②必填字段值為空;③數(shù)據(jù)缺失或錯誤;④表內(nèi)業(yè)務(wù)或表單間邏輯關(guān)聯(lián)不一致;⑤部分?jǐn)?shù)據(jù)需重新生成,如抵押表中抵押原因是“預(yù)告商品房合同抵押權(quán)設(shè)立”或“預(yù)購商品房合同抵押權(quán)設(shè)立”,需單獨(dú)形成預(yù)告登記表,土地抵押數(shù)據(jù)需生成義務(wù)人信息,由于土地抵押原始數(shù)據(jù)無義務(wù)人信息,因此需根據(jù)抵押表中相關(guān)信息生成義務(wù)人表單;⑥部分?jǐn)?shù)據(jù)需踢除,由于超出清理范圍或重復(fù)入庫、數(shù)據(jù)錯誤等原因,一些數(shù)據(jù)需從成果數(shù)據(jù)中剔除,需將與該數(shù)據(jù)關(guān)聯(lián)的各表單數(shù)據(jù)信息都剔除干凈。
不動產(chǎn)存量數(shù)據(jù)清理空間圖形成果主要包括宗地和自然幢圖形??臻g數(shù)據(jù)主要存在宗地壓蓋、自然幢壓蓋、界址點(diǎn)重疊、界址線重疊、界址線與宗地邊界重疊等問題。因此,空間數(shù)據(jù)檢查主要針對宗地、自然幢、界址點(diǎn)、界址線的拓?fù)潢P(guān)系進(jìn)行檢查。
數(shù)據(jù)檢查的具體步驟為:①在SQL Server數(shù)據(jù)庫中利用SQL語言對所有屬性數(shù)據(jù)成果包括空間數(shù)據(jù)屬性信息進(jìn)行批量檢查和修改;②根據(jù)數(shù)據(jù)成果按宗地匯交要求,將SQL Server數(shù)據(jù)庫中的數(shù)據(jù)按宗地代碼分多個批次導(dǎo)出,屬性數(shù)據(jù)導(dǎo)出格式為Access,空間圖形數(shù)據(jù)導(dǎo)出格式為Shape。每個批次的數(shù)據(jù)量大大減少,方便更全面細(xì)致的檢查修改。數(shù)據(jù)檢查技術(shù)路線如圖1所示。
圖1 數(shù)據(jù)檢查技術(shù)路線圖
1)SQL語言。SQL語言是計算機(jī)數(shù)據(jù)庫語言中專用的數(shù)據(jù)語言,主要用于規(guī)模較大的關(guān)系型數(shù)據(jù)庫系統(tǒng)中,也可用于數(shù)據(jù)量較小的中小型數(shù)據(jù)庫系統(tǒng)中。SQL語言包括數(shù)據(jù)定義語言、數(shù)據(jù)操作語言和數(shù)據(jù)控制語言[5]3種主要語句。本文數(shù)據(jù)檢查的第一步就在SQL Server數(shù)據(jù)庫中進(jìn)行。SQL語言中的查詢、插入、修改、刪除等數(shù)據(jù)操作語言滿足了數(shù)據(jù)檢查和修改的需求,如在SELECT語句中可采用數(shù)據(jù)字典表檢查值域范圍的符合性,采用NULL檢查字段值為空的情況,采用COUNT檢查數(shù)據(jù)是否重復(fù),采用計算公式檢查面積相等,采用“<>”或“!=”檢查一致性等。數(shù)據(jù)檢查后利用UPDATE語句可實(shí)現(xiàn)數(shù)據(jù)修改。
2)FME是加拿大Safe Software公司開發(fā)的空間數(shù)據(jù)轉(zhuǎn)換處理系統(tǒng)[6],擁有模塊化和可視化編程的特性,同時支持上百種數(shù)據(jù)格式的讀寫,是一款構(gòu)建數(shù)據(jù)與應(yīng)用之間橋梁的軟件,具有很強(qiáng)的數(shù)據(jù)轉(zhuǎn)換處理功能。本文數(shù)據(jù)檢查需要處理的數(shù)據(jù)量較大,且包含不同平臺的空間數(shù)據(jù)和屬性數(shù)據(jù),利用FME可以很方便地讀取空間數(shù)據(jù),進(jìn)行空間數(shù)據(jù)檢查,并形成方便編輯的文本格式的檢查結(jié)果。例如,利用AreaOnAreaOverlayer轉(zhuǎn)換器可進(jìn)行面壓蓋檢查,利用ListConcatenator轉(zhuǎn)換器可進(jìn)行宗地號或自然幢號的關(guān)聯(lián),利用Aggregator轉(zhuǎn)換器可統(tǒng)計壓蓋數(shù)量,可通過寫模塊的方式定義輸出結(jié)果格式。屬性數(shù)據(jù)成果包含多個表單,每個表單又有眾多字段,數(shù)據(jù)檢查項(xiàng)目繁多,類型多樣,利用FME各類模塊可以很方便地進(jìn)行表單間、字段間的關(guān)聯(lián)檢查和處理。例如,利用Tester轉(zhuǎn)換器可進(jìn)行條件判斷,利用FeatureMerger轉(zhuǎn)換器可進(jìn)行條件匹配,利用AttributeManager轉(zhuǎn)換器可進(jìn)行屬性信息編輯,利用Counter轉(zhuǎn)換器可進(jìn)行數(shù)量統(tǒng)計。
屬性數(shù)據(jù)檢查主要包括值域范圍符合性檢查、必填字段為空檢查和邏輯關(guān)聯(lián)檢查。
3.1.1 值域范圍符合性檢查
值域范圍符合性檢查,即要求字段值符合數(shù)據(jù)字典表中的值域要求,不可超出其范圍。例如,查封登記表中查封類型字段值域需符合如表1所示的要求,查封類型以代碼表示,應(yīng)為1~4,若查封類型為“5”或“查封”,則值域范圍不符合,需更正。
表1 查封類型字典表
根據(jù)數(shù)據(jù)字典表和常見的值域錯誤,本文列舉了值域范圍符合性檢查的必查字段(表2),以全面排查字段值域問題。
表2 值域必查字段
在SELECT語句中利用數(shù)據(jù)字典表即可進(jìn)行值域范圍符合性檢查。例如,查封登記表(CFDJ)的查封類型(CFLX)字段值域檢查,其SQL語句為:
select*from CFDJ where CFLX not in(select DatakeyfromDataDictionarywhereType=1)orCFLX is null
3.1.2 必填字段為空檢查
必填字段不允許為空,數(shù)據(jù)檢查時需對必填字段為空的情況進(jìn)行排查。由于各表單必填字段較多,本文不再詳細(xì)列舉。查封文件和查封文號、權(quán)利人證件號和權(quán)利人證件類型等成對出現(xiàn)的字段需同時有值,詳細(xì)列表如表3所示。
表3 同時有值字段列表
在SELECT語句中利用NULL即可檢查字段值為空的情況。例如,檢查抵押權(quán)表(DYAQ)區(qū)縣代碼(QXDM)字段為空的情況,其SQL語句為:
3.1.3 邏輯關(guān)聯(lián)檢查
邏輯關(guān)聯(lián)檢查(表4)涉及兩個以上的表單或字段,是指數(shù)據(jù)具有邏輯內(nèi)容上的關(guān)聯(lián)關(guān)系(如房地關(guān)聯(lián))或字段具有邏輯內(nèi)容或數(shù)學(xué)上的關(guān)聯(lián)關(guān)系(如字段值相等、其他數(shù)學(xué)關(guān)系)。在SQL Server數(shù)據(jù)庫中,房地產(chǎn)權(quán)、查封登記、抵押權(quán)、登記信息表都有唯一標(biāo)識碼(WYBSM)字段,登記信息、戶、共用宗建設(shè)用地使用權(quán)表均有戶唯一標(biāo)識碼(HWYBSM)字段。數(shù)據(jù)批量檢查修改時主要通過WYBSM字段和HWYBSM字段進(jìn)行表單間關(guān)聯(lián)。
表4 邏輯關(guān)聯(lián)檢查項(xiàng)
在SELECT語句中利用IN檢查房地關(guān)聯(lián)。例如,檢查有房無地的情況,若FDCQ2表中的數(shù)據(jù)在JSYDSYQ_GYZ表中未通過關(guān)聯(lián)字段匹配成功,則表示該數(shù)據(jù)有房產(chǎn)信息無土地信息,F(xiàn)DCQ2表和DJXX表可通過WYBSM關(guān)聯(lián),DJXX表和H表可通過HWYBSM關(guān)聯(lián),JSYDSYQ_GYZ表中有HWYBSM字段而沒有WYBSM字段,因此進(jìn)行有房無地檢查,需借助DJXX表和H表,共涉及4個表單間的關(guān)聯(lián)。
在SELECT語句中利用COUNT進(jìn)行數(shù)據(jù)重復(fù)檢查,通過COUNT計算出現(xiàn)次數(shù)即可實(shí)現(xiàn)重復(fù)檢查。
在SELECT語句中利用“<>”或“!=”檢查一致性。例如,房地產(chǎn)權(quán)表(FDCQ2)中不動產(chǎn)權(quán)證號(BDCQZH)和DJXX表中證書號碼(ZSHM)的一致性檢查,其SQL語句為:
select A.WYBSM,B.HWYBSM,A.BDCQZH,B.ZSHM from FDCQ2 A left join DJXX B on A.WYBSM=B.WYBSM where B.WYBSM is not null and A.BDCQZH<>B.ZSHM
在SELECT語句中利用計算公式檢查面積相等情況。例如,F(xiàn)DCQ2表中建筑面積(JZMJ)等于專有建筑面積(ZYJZMJ)和分?jǐn)偨ㄖ娣e(FTJZMJ)之和的檢查,其SQL語句為:
select*from FDCQ2 where(JZMJ IS NOT NULL AND ZYJZMJ IS NOT NULL AND FTJZMJ IS NOT NULL)AND(ROUND(JZMJ,2)!=ROUND(ZYJZMJ+FTJZMJ,2))
空間數(shù)據(jù)拓?fù)潢P(guān)系檢查主要包括宗地壓蓋檢查、自然幢壓蓋檢查、界址點(diǎn)重疊檢查、界址點(diǎn)是否位于界址線端點(diǎn)檢查、界址線重疊相交檢查、界址線與宗地邊界是否重疊檢查。成果數(shù)據(jù)檢查時,部分?jǐn)?shù)據(jù)需重新生成。一些數(shù)據(jù)由于超出清理范圍或重復(fù)入庫、數(shù)據(jù)錯誤等原因,需從成果數(shù)據(jù)中剔除。
1)宗地壓蓋檢查。利用AreaOnAreaOverlayer轉(zhuǎn)換器進(jìn)行面壓蓋檢查,利用ListConcatenator將壓蓋相關(guān)的兩個宗地號關(guān)聯(lián),利用Aggregator轉(zhuǎn)換器對宗地壓蓋數(shù)量進(jìn)行統(tǒng)計,輸出結(jié)果形如:宗地420106005003GB00133與420106005003GB00068壓 蓋兩處。自然幢壓蓋檢查原理與宗地壓蓋檢查一致,不再贅述。
2)界址點(diǎn)檢查。界址點(diǎn)重疊檢查利用Coordinate-Extractor轉(zhuǎn)換器提取坐標(biāo)點(diǎn)坐標(biāo),利用DuplicateFilter轉(zhuǎn)換器根據(jù)坐標(biāo)和宗地代碼綜合篩選出有重疊的界址點(diǎn),輸出結(jié)果。界址點(diǎn)是否位于界址線端點(diǎn)檢查,利用CoordinateExtractor轉(zhuǎn)換器提取界址線端點(diǎn)并構(gòu)建端點(diǎn)圖層,利用SpatialRelator轉(zhuǎn)換器判斷界址點(diǎn)與端點(diǎn)層點(diǎn)位重合情況,未找到相交點(diǎn)的界址點(diǎn)即不在界址線端點(diǎn)上,輸出檢查結(jié)果。
3)界址線檢查。界址線重疊相交檢查,即檢查界址線是否相交于界址點(diǎn)處,利用LineOnLineOverlayer轉(zhuǎn)換器判斷界址線的相交情況,對輸出的打斷界址線進(jìn)行聚合,若界址線相交檢查后被打斷即為有線段重疊相交的情況,輸出相交界址線信息。界址線與宗地邊界是否重疊檢查,即檢查宗地邊界線與界址線是否嚴(yán)格套合,利用GeometryCoercer轉(zhuǎn)換器將宗地轉(zhuǎn)換為線圖層,利用SpatialRelator轉(zhuǎn)換器判斷界址線是否位于宗地線圖層之上,輸出不套合的界址線結(jié)果。
4)預(yù)告登記表生成。根據(jù)DJYY字段中的“預(yù)告商品房合同抵押權(quán)設(shè)立”或“預(yù)購商品房合同抵押權(quán)設(shè)立”,利用Tester轉(zhuǎn)換器進(jìn)行判斷,根據(jù)BDCDYH、YWH字段與DJXX表,利用FeatureMerger轉(zhuǎn)換器進(jìn)行匹配,獲取YGDJ表所需字段信息,將BDCDYH字段與FDCQ2表進(jìn)行匹配,獲取有房地產(chǎn)數(shù)據(jù)的相關(guān)字段信息,對字段進(jìn)行編輯處理后生成YGDJ表。
5)宗地業(yè)務(wù)表數(shù)據(jù)剔除。若宗地的權(quán)利人和8張業(yè)務(wù)表信息都已入庫,無需重復(fù)入庫時,則從成果數(shù)據(jù)中剔除。根據(jù)YWH字段,利用FeatureMerger轉(zhuǎn)換器匹配宗地與QLR表和8張業(yè)務(wù)表,寫模塊輸出未匹配的數(shù)據(jù)即可得到剔除后成果數(shù)據(jù)中的QLR表和8張業(yè)務(wù)表。
SQL語言實(shí)現(xiàn)了對所有屬性數(shù)據(jù)的檢查,每項(xiàng)檢查內(nèi)容反饋的錯誤記錄數(shù)量會不一樣。值域范圍符合性和必填字段為空,均可利用UPDATE語句進(jìn)行修改;邏輯關(guān)聯(lián)錯誤,部分可利用UPDATE語句進(jìn)行修改,如房地關(guān)聯(lián)檢查中有房無地的情況,可批量添加備注信息,部分則需人工查檔修改,如房產(chǎn)面積的修改。
檢查結(jié)果包括錯誤數(shù)量和內(nèi)容,如檢查房地產(chǎn)權(quán)表(FDCQ2)的建筑面積(JZMJ)等于專有建筑面積(ZYJZMJ)和分?jǐn)偨ㄖ娣e(FTJZMJ)之和(圖2),共有6 938條記錄錯誤,紅框部分為存在錯誤記錄的面積字段。SQL語言檢查時存在一個弊端,檢查結(jié)果頁面不可直接修改編輯,需另寫修改語句或返回至數(shù)據(jù)表單人工修改。
圖2 FDCQ2的JZMJ等于ZYJZMJ和FTJZMJ之和的檢查結(jié)果
SQL語言檢查具有以下特點(diǎn):①SQL語言簡單靈活,句式可套用;②同一類錯誤的句式結(jié)構(gòu)一樣,只需替換表單名稱和字段名稱即可;③可用多條SQL語句同時檢查多條錯誤,檢查結(jié)果頁面顯示為結(jié)果1、結(jié)果2、結(jié)果3等;④檢查結(jié)果中需呈現(xiàn)的字段,可在語句中進(jìn)行限定。
FME實(shí)現(xiàn)了對所有空間數(shù)據(jù)拓?fù)潢P(guān)系的檢查,針對每一類問題的檢查程序都是固定的,可重復(fù)使用。FME除完成空間數(shù)據(jù)的檢查外,在屬性數(shù)據(jù)較復(fù)雜的處理上也發(fā)揮了重要作用。FME檢查具有以下特點(diǎn):①FME可實(shí)現(xiàn)不同數(shù)據(jù)格式間的轉(zhuǎn)換,適合空間數(shù)據(jù)檢查,檢查結(jié)果輸出格式可自行定義,檢查結(jié)果可直接利用,無需編輯修改;②FME轉(zhuǎn)換器多樣,轉(zhuǎn)換器組合運(yùn)用可實(shí)現(xiàn)較復(fù)雜的功能,適合對多條數(shù)據(jù)和表單進(jìn)行處理;③FME可視化強(qiáng),界面呈現(xiàn)更直觀、完整,可直接利用轉(zhuǎn)換器對檢查結(jié)果進(jìn)行編輯修改得到成果數(shù)據(jù),甚至數(shù)據(jù)檢查和修改可一步完成,如數(shù)據(jù)重復(fù)檢查時,DuplicateFilter轉(zhuǎn)換器可輸出去重后的數(shù)據(jù),再利用寫模塊寫出成果數(shù)據(jù)即可。
本文介紹了武漢市不動產(chǎn)登記存量數(shù)據(jù)的基本情況、數(shù)據(jù)檢查技術(shù)路線和關(guān)鍵技術(shù),梳理了數(shù)據(jù)檢查內(nèi)容,闡述了SQL語言和FME在數(shù)據(jù)檢查中的具體應(yīng)用,并討論了兩種技術(shù)在數(shù)據(jù)檢查中的特點(diǎn)和效果。結(jié)果表明,采用SQL語言和FME檢查是一種高效、可行、便捷的方法,通過自動化處理的手段切實(shí)提高了檢查效率,極大減少了檢查人員的工作量。在數(shù)字檔案清理整合研究中,對詳細(xì)技術(shù)應(yīng)用的探討較少,多為整合方案和技術(shù)路線的研究,本文基于工作實(shí)踐對SQL語言和FME在數(shù)據(jù)檢查中的具體應(yīng)用進(jìn)行了闡述,可促進(jìn)數(shù)據(jù)檢查實(shí)踐工作中對技術(shù)應(yīng)用的思考和選擇利用,對實(shí)踐工作具有借鑒意義。
數(shù)據(jù)檢查工作還有很多方便實(shí)用的技術(shù),如基于GeoGloble[7]、AE[8]等相關(guān)平臺開發(fā)的數(shù)據(jù)質(zhì)量檢查軟件。本文對技術(shù)的探討還不夠深入,相關(guān)技術(shù)在數(shù)據(jù)檢查中的應(yīng)用也未形成統(tǒng)一的體系,這是本文存在的一個局限,也是今后研究和實(shí)踐工作改進(jìn)的方向。