Çanakkale Harita Kadastro Mühendislik Bürosu

Sık Karşılaşılan CityGML Validasyon Hataları Nelerdir, Nasıl Çözülür?

İçerik gizle
Sık Karşılaşılan CityGML Validasyon Hataları ve Çözüm Yolları

Sık Karşılaşılan CityGML Validasyon Hataları ve Çözüm Yolları

TKGM Otomatik Doğrulama Uygulamasına yüklenen 3 boyutlu sayısal yapı modelleri (CityGML dosyaları) için doğrulama işlemlerinin başarısız olmasına neden olabilecek çok sayıda hata kaynağı mevcuttur. CityGML dosyalarının hatalı üretimi nedeniyle alınan bu hatalar ve hata kaynaklarına ilişkin kısa açıklamaları, TKGM tarafından Validasyon Hata Kodları adı altında paylaşılmıştır. Bu uzun liste içerisinde en sık karşılaşılan CityGML validasyon hataları ve bu hataların çözüm yolları ise şunlardır:


1. {…} geçerli bir değer değil.

  • Olası nedenler: Bu hata, genellikle üretilen CityGML dosyasındaki bazı sözel veri girişlerinin eksik veya hatalı yapılmış olmasından kaynaklanmaktadır.
  • Çözüm: Bu hata, genellikle ilgili nesne için herhangi bir veri girişinin yapılmadığı veya yapılan veri girişinin hatalı olduğu durumlarda gözlenmektedir. Söz konusu nesnenin tespiti için FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlar kullanılabilir ve hata alınan nesnenin ID’si CTRL+F arama tuşu ile aratılarak CityGML dosyasındaki hatalı nesne belirlenebilir. Hatalı nesne belirlendikten ve bu nesne için gerekli veri girişi/düzeltmesi yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve alınan hatanın giderilmiş olduğu gözlenir.

2. {…} değeri kodlistesinin içinde bulunamadı.

  • Olası neden: Bu hata, genellikle üretilen CityGML dosyasındaki bazı kısım tanımlamalarının yapılmamış olmasından kaynaklanmaktadır.
  • Çözüm: Bu hata, genellikle ilgili nesne için herhangi bir tanımın yapılmadığı durumlarda gözlenmektedir. Söz konusu nesnenin tespiti için FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlar kullanılabilir ve hata alınan nesnenin ID’si CTRL+F arama tuşu ile aratılarak CityGML dosyasındaki hatalı nesne belirlenebilir. Hatalı nesne belirlendikten ve bu nesne için gerekli tanımlama yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve alınan hatanın giderilmiş olduğu gözlenir.

3. Hesaplanan alan ile plandan gelen alan eşit değil. (Tolerans %10)

  • Olası neden: Bu hata, bağımsız bölüm kısımları için yapılan çizimler sonucunda hesaplanan alan ile mimari projede belirtilen plan alanının uyumsuz olmasından kaynaklanmaktadır. Hesaplanan alan ile mimari projede belirtilen alan arasında en fazla %10’luk bir tolerans bulunmakta olup, bu sınırın aşıldığı durumlarda söz konusu hata ile karşılaşılmaktadır.
  • Çözüm: Bu hata, bağımsız bölüm kısımları için hesaplanan alan ile plan alanı arasındaki farkın %10’dan fazla olduğu durumlarda gözlenmektedir. Söz konusu bağımsız bölüm kısmının tespiti için FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlar kullanılabilir ve hata alınan nesnenin ID’si CTRL+F arama tuşu ile aratılarak CityGML dosyasındaki hatalı kısım belirlenebilir. İlgili kısım için girilen plan alanı değeri ile mimari projede yazan değerin karşılaştırılması gerekmektedir. Şayet mimari projede belirtilen plan alanı değeri CityGML dosyasına doğru bir şekilde girilmişse ve tolerans miktarı buna rağmen aşılmışsa, ilgili kısmın geometrisinin tolerans sınırlarına çekilecek şekilde yeniden düzenlenmesi gerekmektedir. Gerekli düzenlemeler yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

4. Yüzey elemanı, tanımlanan dış çerçevenin(envelope) içinde değil. (Yüzey elemanı : …)

  • Olası nedenler: Bu hata, genellikle kat planları veya çatı için çizilen dış çerçevelerin, kat/çatı elemanlarını kesmesinden kaynaklanmaktadır.
  • Çözüm: Bu hata, kat planları veya çatı için dış çerçevenin, tüm kat/çatı nesnelerini kapsamaması nedeniyle gözlenmektedir. Hatanın giderilmesi için dış çerçevenin tüm nesneleri kapsayacak şekilde düzenlenmesi gerekmektedir. Gerekli düzenlemeler yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

5. Bir linearRing kendisini kesemez (kenarlar birbirini kesemez).-104 | StoreyTouchValidator | Poligona ait LinearRingler kesişemez.-201

  • Olası nedenler: Bu hatalar, genellikle kısımların birbirini veya doğrudan kendini kesecek şekilde hatalı çizilmiş olmasından kaynaklanmaktadır. Farklı kısımlar birbirini kesiyor olabilir veya birbirine çok yakın çizilmiş olabilir, bir kısmın geometrisinde yapılan değişiklikler nedeniyle kısım kendi kendini kesiyor olabilir veya kapı/pencere yükseklikleri kat yüksekliğini aşacak şekilde hatalı girilmiş olabilir.
  • Çözüm: Bu hatalar, nesnelerin birbirlerini/kendilerini kesmesi durumunda gözlenmektedir. Söz konusu nesnelerin tespiti için FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlar kullanılabilir ve hata alınan nesnelerin ID’si CTRL+F arama tuşu ile aratılarak CityGML dosyasındaki hatalı nesneler belirlenebilir. İlgili nesnelerin geometrilerinde gerekli düzenlemeler yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

6. Bir poligon düzlemsel olmalıdır, tüm noktalar bir düzlem üzerine yerleştirebilir olmalıdır.-203 | (Poligon birden fazla yüzeye oturtulduğunda) Yüzeylerin normalleri arasındaki açı farkı toleranstan fazla.-204

  • Olası neden: Bu hatalar, genellikle çatı yüzeylerinin hatalı bir şekilde oluşturulmuş olmasından kaynaklanmaktadır.
  • Çözüm: Bu hatalar, genellikle çatı yüzeylerinin karmaşık/kompleks yüzeyler olarak oluşturulmuş olması nedeniyle gözlenmektedir. FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlarda çatı yüzeyleri bir bütün olarak ele alındığından, hatalı yüzeylerin spesifik olarak tespiti için Visual Studio Code gibi kod düzenleyiciler kullanılabilir ve hata alınan nesnelerin ID’si CTRL+F arama tuşu ile aratılarak manuel olarak silinebilir. Hatalı yüzeyler silindikten sonra CTRL+S kısayolu ile kaydedilen CityGML dosyası, FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlar kullanılarak görüntülenebilir ve silinmiş olan hatalı yüzeyler belirlenebilir. İlgili yüzeylerin, üçgen yüzeylerden oluşacak şekilde sadeleştirilmesi önerilir. Yüzeyler yeniden oluşturulduktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

7. İç(interior) linearRing, dış(exterior) linearRingin içerisinde yer almalıdır.-206 | Toplam bağımsız bölüm sayısı gmldeki ile uyuşmuyor. (Girilen : …, Gmlde bulunan: …) | Bağımsız bölüm kısım sayısı hatalı.(Girilen : …, Tespit edilen : 0) | Bağımsız Bölüm Çizim Alanı, kısım çizim alanlarının toplamından büyük olmalıdır. ( Girilen : … Kısım toplam alan : …) | storeyTouchValidator: Object reference not set to an instance of an object.

  • Olası nedenler: Bu hatalar; genellikle aynı kat içerisinde birden fazla bağımsız bölüme ve/veya eklentiye aynı bağımsız bölüm numarasının tanımlanmış olmasından kaynaklanmaktadır.
  • Çözüm: Bu hatalar, genellikle bir bağımsız bölüm ile eklentisinin aynı katta bulunması nedeniyle veya aynı katta bulunan birden fazla bağımsız bölüme aynı BB no’nun tanımlanmış olması nedeniyle gözlenmektedir. Söz konusu bağımsız bölümlelerin ve/veya eklentilerinin tespiti için FZKViewer veya KITModelViewer gibi açık kaynaklı yazılımlar kullanılabilir ve hata alınan bağımsız bölümlerin ve/veya kısımlarının ID’si CTRL+F arama tuşu ile aratılarak CityGML dosyasındaki hatalı bağımsız bölümler/kısımlar belirlenebilir. Aynı katta bulunan birden fazla bağımsız bölüm için de aynı BB no değeri tanımlanmış ise, ilgili bağımsız bölümler için doğru BB no değerlerinin tanımlanması yeterlidir. Bir bağımsız bölüm ile eklentisinin aynı katta bulunması durumunda ise; aynı kat no bilgisine ve aynı kat yüksekliklerine sahip olan, ancak kat tipi normal kat yerine asma kat şeklinde tanımlanan başka bir katın oluşturulması (yani, mevcut normal katın kopyalanarak yeni bir kat oluşturulması, kopyalanarak oluşturulan yeni katın kat tipinin de asma kat olarak değiştirilmesi) ve bu kat içerisine, normal katta bulunan eklentinin kesilerek yapıştırılması gerekmektedir. Böylece puzzle’ın parçaları tamamlanmış olur ve aynı kat içerisinde hem eklenti hem de bağımsız bölümün kendisi tanımlanabilir. Gerekli düzeltmeler yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

8. Bina raporu oluşturulamadı. Lütfen dosyayı sistem yöneticisine iletiniz.

  • Olası nedenler: Bu hata, genellikle CityGML dosyasında bulunması gereken alanlardan bazılarının, model üretimi sırasındaki herhangi bir nedenden ötürü oluşturulmamış olmasından kaynaklanmaktadır. En sık karşılaşılan hata kaynağı, yapı köşe kotlarının negatif değerlere sahip olmasıdır.
  • Çözüm: Bu hata, genellikle yapı aplikasyon projesindeki yapı köşe kotlarının negatif değerlere sahip olması veya TIC kotlarının yanlışlıkla 0’dan küçük değerler ile oluşturulmuş olması durumunda gözlenmektedir. Bu nedenle CityGML dosyasında lod2TerrainIntersection alanı oluşturulmamakta ve söz konusu hata alınmaktadır. Öncelikle, CityGML dosyasına girilen TIC kotlarının kontrol edilmesi ve yapı aplikasyon projesi ile karşılaştırılması gerekmektedir. Girilen değerlerde herhangi bir sorun yoksa, hata kaynağının teyit edilebilmesi için Visual Studio Code gibi kod düzenleyiciler kullanılabilir ve CTRL+F arama tuşu ile ilgili alan aratılabilir. Bu alanın CityGML dosyasında bulunmaması durumunda, ilgili alan manuel olarak oluşturulabilir. Söz konusu alanın oluşturulmasının nedeni, TIC kotlarının negatif olması/girilmesi ise, yapı aplikasyon projesindeki yapı köşe kotları pozitif değerlere çekilerek yeni bir CityGML dosyası üretilebilir. Üretilen CityGML dosyası Visual Studio Code gibi kod düzenleyiciler ile açıldıktan sonra CTRL+F arama tuşu ile ilgili alan bulunabilir ve bu alanda yer alan TIC kotları daha sonra manuel olarak tekrardan değiştirilebilir. Gerekli eklemeler/düzeltmeler yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

9. maksBuildingParcel: Value cannot be null. (Parameter ‘s’) | MEGSIS: Megsisten gelen parsel geometrisi bulunamadı. İlgili kadastro müdürlüğüne başvurunuz. (Parselde bulunan aktif zeminref:0)

  • Olası nedenler: Bu hatalar, CityGML dosyasının hatalı bir taşınmaz no (taşınmaz kimlik no/zemin sistem no) değeri ile üretilmiş olmasından kaynaklanmaktadır. Hata kaynağının 3 farklı nedeni olabilir: 1) Taşınmaz no değeri hatalı girilmiş olabilir. 2) İlgili taşınmaz üzerinde bir imar uygulaması gerçekleştirilmiş olabilir veya bölgede bir 22/A kadastro yenileme çalışması yapılmış olabilir, dolayısıyla da taşınmaza ait tapu evrakı güncel olmayabilir. 3) 3 boyutlu sayısal yapı modeli, kat mülkiyeti tesisi için üretiliyor olabilir ve tapu evrakının Zemin Tipi kısmında AnaTasinmaz yerine Kat İrtifakı yazıyor olabilir.
  • Çözüm: Bu hatalar, taşınmaz no (taşınmaz kimlik no/zemin sistem no) değerinin hatalı girişi nedeniyle gözlendiğinden, öncelikle ilgili veri girişinin doğru bir şekilde yapılıp yapılmadığının tapu evrakı üzerinden kontrol edilmesi gerekmektedir. Veri girişinde herhangi bir hatanın yapılmadığı gözlenirse, tapu evrakında Zemin Tipi kısmında AnaTasinmaz yazıp yazmadığı kontrol edilmelidir. Kat irtifakı tapusu paylaşılmışsa, taşınmaz ID’sinin ilgili Tapu Müdürlüğünden öğrenilmesi gerekmektedir. Öte yandan; tapu evrakında yazan ada/parsel ve alan bilgileri, TKGM Parsel Sorgu Uygulaması üzerinden kontrol edilmelidir. Taşınmaz üzerinde bir imar uygulamasının gerçekleştirilip gerçekleştirilmediği, taşınmazın 22/A kadastro yenileme işlemi görüp görmediği incelenmelidir. Bu bilgiler ışığında, ilgilisinden güncel bir tapu evrakı veya taşınmaz kimlik no bilgisi talep edilmelidir. Güncel bir tapu evrakı veya taşınmaz kimlik no bilgisi dikkate alınarak üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

10. Binanın tabanı ile megsisten gelen parsel geometrisi kesişmelidir.

  • Olası nedenler: Bu hata, CityGML dosyasının hatalı bir şekilde jeoreferanslandırılmasından kaynaklanmaktadır. Hata kaynağının 2 farklı nedeni olabilir: 1) Yapı aplikasyon projesi hatalı hazırlanmış olabilir. 2) 3 boyutlu sayısal yapı modeli üretimi için projeksiyon bilgisi yanlış tanımlanmış olabilir.
  • Çözüm: Bu hata, jeoreferanslandırma işleminin hatalı yapılmış olması nedeniyle gözlendiğinden, öncelikle TIC koordinatlarının/kotlarının doğru bir şekilde girilip girilmediğinin ve projeksiyon bilgisinin doğru bir şekilde tanımlanıp tanımlanmadığının yapı aplikasyon projesi üzerinden kontrol edilmesi gerekmektedir. Veri girişlerinde ve tanımlanan projeksiyon bilgisinde herhangi bir sorun tespit edilmezse, projeye altlık bir uydu görüntüsü eklenir ve jeoreferanslandırma işleminin hatalı yapıldığı gözlenebilir. Bu durumda söz konusu hata, yapı aplikasyon projesinde yazan D.O.M. değerinin hatalı olmasından kaynaklanmakta olup, hem yapı aplikasyon projesinde hem de CityGML dosyası içerisinde gerekli düzeltmelerin yapılması gerekmektedir. Gerekli düzeltmeler yapıldıktan sonra üretilen yeni CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına yüklenir ve hatanın giderilmiş olduğu gözlenir.

11. Bu pozisyonda BuildingServiste zaten bir bina var. (Yapı ID : …)

  • Olası neden: Bu hata; taşınmaz üzerinde mevcut olan eski bir yapının, daha önceden sisteme re’sen kaydedilmiş olmasından kaynaklanmaktadır.
  • Çözüm: Bu hata, genellikle taşınmaz üzerinde MAKS sisteminde kayıtlı olan başka bir yapının mevcut olması nedeniyle gözlenmektedir. Söz konusu yapının sistemden silinmesi için üretilen CityGML dosyası ile birlikte dijitalbina@tkgm.gov.tr adresine bir e-posta atılmalıdır. Yoğunluğun yaşandığı bazı zamanlarda, alıcı posta kutusu dolu olduğu için gönderilen e-postalar alıcıya iletilememekte ve buna ilişkin sistem tarafından otomatik olarak bir e-posta yanıtı iletilmektedir. Bu gibi durumlarda, söz konusu talebi içeren e-postanın birden fazla kez gönderilmesi ve gönderilen e-postanın alıcı posta kutusuna düştüğünden emin olunması gerekebilmektedir. Sistem tarafından alıcı posta kutusunun dolu olduğuna dair otomatik bir yanıt iletilmemişse, gönderilen e-posta alıcı posta kutusuna düşmüş demektir, bu durumda gereksiz meşguliyet yaratmamak adına tekrar e-posta gönderilmemeli ve talebin işleme alınması beklenmelidir. İlgili talep doğrultusunda TKGM tarafından ivedi bir şekilde aksiyon alınmakta ve alınan hatanın en kısa zamanda (genellikle birkaç saat içerisinde) giderilmesi sağlanmaktadır. Hata giderildikten sonra, TKGM tarafından problemin/sorunun çözüldüğüne dair bir bilgilendirme e-postası iletilmektedir. Gelen e-postaya istinaden, üretilen CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına tekrar yüklenir ve hatanın giderilmiş olduğu gözlenir.

12. buildingExistence: GetBuildingList

  • Olası neden: Bu hata; sistemde yaşanan yoğunluk veya sistemsel başka bir sorun nedeniyle alınmaktadır.
  • Çözüm: Bu hata, model üretiminde herhangi bir hatanın bulunmadığı durumlarda, sistemde yaşanan yoğunluk veya sistemsel başka bir sorun nedeniyle gözlenmektedir. Üretilen CityGML dosyası TKGM Otomatik Doğrulama Uygulamasına tekrar yüklenir (bazı durumlarda birden fazla kez) ve hatanın giderilmiş olduğu gözlenir.

CityGML validasyon hataları ile karşılaşmamak ve sorunsuz/güvenilir bir validasyon kodu almak için “3 Boyutlu Sayısal Yapı Modeli Üretiminde Nelere Dikkat Edilmeli?” başlıklı yazımızı inceleyebilir ve model üretim işlemlerinizi tam kontrollü bir şekilde gerçekleştirebilirsiniz.

Türkiye geneli 3BSYM üretimi işlemleriniz için ise hizmet sayfamızı inceleyebilir veya bizimle iletişime geçebilirsiniz.