XML Nedir?

Bu yazıyı paylaş

Tweet It! Facebook
Kobitek Takip Servisi
XML Nedir?

Extensible Markup Language, yani genişletilebilir işaretleme dili. Her kes XML'i anlatırken işaretleme dillerinin ata

Extensible Markup Language, yani genişletilebilir işaretleme dili. Her kes XML'i anlatırken işaretleme dillerinin atası olan SGML'den iyi veya kötü söz eder. Ama nedense HTML'i anlatırken durum böyle değildir. Bu tür bir anlatımı eleştirmiyoruz, çünkü çok doğru bir yaklaşımdır. Ama bildiğiniz gibi TeknoCLUB web profesyonellerine yönelik bir alan değildir, ve webe ilgi veya ihtiyaç duyan kişileri bilgilendirmeyi amaçlar. Aslında çoğu kez bu yüzden zorlanıyoruz da. Yani teknik şeyleri salt teknik bilgiden arındırıp, felsefeyi anlatmak hiç de kolay olmuyor. İsterseniz bu faslı geçip konuya girelim.

Gereksinim nereden doğdu?İşletim sisteminden bağımsız, içeriğe göre yazılım gerektirmeyen ve buna rağmen bilgiyi paylaşma ihtiyacı vardı. Yani bir windows +MS Office kullanıcısının oluşturduğu bir dosyayı Mac kullanıcısı ve farklı bir ofis paketi kullanan bir kullanıcının okuyabilmesi düşünüldü. Bunu yapabileceğiniz ilk yaygın dosya formatı da text dosyaları idi. Notepad ya da her hangi bir text editör programı ile yazdığınız dosyayı başkaları okuyabiliyor ve değiştirebiliyordu. Tabii bununla yetinilemezdi, çünkü text dosyaları çok zayıf biçimlendirme olanakları sunuyordu. İşte bunlar SGML ve bunun alt grubu olan işaretleme dillerini gerekli kıldı.

Daha sonra daraltılmış kalıplar içinde çalışan, dolayısı ile öğrenimi çok daha kolay olan HTML çıktı. Böylece web sayfaları oluşturulmaya ve bir tarayıcı programa sahip olan her hangi bir bilgisayarda görüntülenmeye başladı. Tablolar, metinler, grafikler vb. pek çok şey bu sayede sunulmaya başlandı.

Ama sorun tam olarak çözülmemişti. Çünkü bu sayfalar statik yani oluşturulduğu şekilde görünen sayfalardı. Dinamik sayfalara, yani kullanıcının ihtiyacına göre bu dosyaların oluşturlmasına ihtiyaç duyuluyordu. Çözüm kısa sürede geldi. Sunucu tarafında çalıştırılan program dilleri geliştirildi. Aslında yapılan bir HTML sayfasının oluşturulması idi. Farklılık ise bu HTML sayfalarının kullanıcı isteğine göre o anda oluşturulması ve tarayıcısına gönderilmesi idi. Yani bu tür bir program ile sunucu tarafında oluşturulan bir sayfa aslında oluşturulduğu andan itibaren statik bir HTML sayfasıdır. Bu tarz bir sayfanın kaynak koduna baktığınızda bunu fark edersiniz. Fazla kafanızı karıştırmayalım. Sunucu tarafında HTML sayfası oluşturmak , bir de veri tabanı kullanımı imkanı sunuyordu ki, bu ikili, devrimsel ve ihtiyacı karşılamak açısından çok başarılı idi. (PHP, ASP, SQL, MySQL, vb) Halen de öyledir. Farkında mısınız XML'e ancak gelebildik. Sorunun çözülemeyen tarafı şu idi. Sunucu tarafında oluşturduğumuz dosya statik dedik ya, işte düğüm burada. Çünkü bu tür bir dosya oluştulduğu ortama bağlıdır. Dolayısı ile istenen sonucu sunar, ama değişim esnekliği yoktur. İşte burada XML devreye girdi ya da giriyor diyelim. XML dosyasını ne şekilde oluşturursanız oluşturun bir başka platforma teslim edebilir ve orada da aynen kullanılmasını ve hatta değiştirilip geri alınmasını ve sorunsuzca kullanabilmesini sağlayabilirisiniz. XML kesinlikle alternatif değil HTML'yi tamamlayıcı bir dildir. Nedeni ise çok basit HTML dosyanın ya da sayfanın görselliğini yönetmek için vardır, XML ise içeriğini. Buna bağlı olarak XML de çıktıyı oluşturmak için HTML'yi kullanır. Ama bir nevi dinamik dosyalarda sık kullanılan ve içeriğin tutulduğu veri tabanını da dolaşıma sokmanızı sağlar. Bu son cümle teknik jargona hiç de uymadı galiba, ama anlatım açısından gerekli idi.

İşaretleme DiliKısaca işaretleme dilini anlatmamız gerekecek. HTML'de her hangi bir öğe sayfaya eklenirken etiketler (tag) arasında yazılır. Böylece tarayıcı ne yapacağını bilir. Çok basit bir örnek vermek gerekirse bir yazının koyu yazılacağını tarayıcıya anlatmak için koyu etiketleri arasına yazarız. İşaretleme dili kavramı tam da bunu ifade eder, yani koyu ifadesini koyu yazma (Bold) etiketi ile işaretlemiş oluyoruz. HTML ile XML'in ortak noktası bu işaretleme mantığıdır ve bunu da her ikisinin de atası olan SGML'den miras alırlar. Fark Nerede?HTML'de bu etiketler önceden tanılanmış ve izin verilen biçimlerde kullanılmıştır. Yani yukarıdaki örnekteki koyu yazma işini yapacaksınız bunu anlatıldığ şekilde yaparsınız, başka şekilde değil. Oysa ki XML'de bu etiketleri serbestçe oluşturursunuz. Örneğin XML Açıklamaları şeklinde bir oluşum kullanılır. Ve daha sonra da bunun biçimsel tanımlamaları yapılarak nasıl görüntüleneceği belirlenir.

Genişletilebilir ifadesi buna dayanmaktadır. Bu şekilde içeriği etiketler ve sayfanızı oluşturursunuz.

Şimdi bunun ne işinize yarayacağına göz atalım

Kullanım AlanıXML'in bu özelliği sayesinde oluşturulan dosya örneğin tedarik zincirinde dolaşıma sokulabilir. Ve bu şekilde tanımlanan özel etiketler içine girilen bilgiler her hangi bir birgisayarda (tabii XML destekleyen bir tarayıcı ile) görüntülenebilir. Örnek vermek gerekirse XML'in ilk kullanıcısı finans dünyası olmuştur. Borsa, döviz bilgileri bu şekilde iletilmeye başlanmıştır.

Daha önce de belirttiğimiz gibi bu yazı size XML hakkında fikir vermeyi amaçlar, yoksa konu bu kadar basit değil. XML dosyalarını tanımlayan DTD, Shema, CSS dosyaları vb. pek çok teknik ayrıntı var ve bunlar kalın kitaplarda anlatılıyor.

Ama burada anlatılanlardan bir web kullanıcısı olarak çıkarmamız gereken, XML dili sayesinde verinin sadece işlenip gösterilmekten öte değiş tokuşunun mümkün olduğu ve gelecekteki uygulamaların pek çoğunun içinde bu dilin yer alacağı.

ücretsiz hizmetlerimizden faydalanmak için üye olun
9511 kere okundu

Etiketler: internet yazılım

Bu Kategorideki Diğer Yazılar

Fotoğraflarda Çözünürlük
Düğmeye bas, anında açılsın, insan gibi öğrenip konuştuğunuzu anlasın!
Drop Shipping Nedir, Nasıl Çalışır?
Tanıtım Siteleri ile E-Ticaret Siteleri Arasındaki Farklar
IBM WATSON Projesi
Ticari Yazılımlar
Blog Nedir?
Web Sitelerine Nasıl İsimler Seçmeli?
Pardus İşletim Sistemi
MasterCard Yeni Nesil Dolandırıcılık Takip Çözümlerini Hizmete Sunuyor
Yerli PayPal Alternatifleri; PayU, PayNet, iPara
Artık IMAP E-posta Sunucusu Kullanmalısınız
Kuantum Bilgisayarlarına Hazır mıyız?
Kurum İçi İletişim Şirketler İçin Neden Önemlidir?
ERP Sürecinde %100 Başarı

BİLİŞİM VE TEKNOLOJİ

DIŞ TİCARET

Hangi 3 Harf? Teslim Şekli anlamında kullanılan Incoterms kısaltmaları

Hangi 3 Harf? Teslim Şekli anlamında kullanılan Incoterms kısaltmaları

Dış ticaret işlemi yapan, ister ihracat olsun, ister ithalat olsun; bu 3 harfleri patronundan, işi yapan uzmanına kadar; Satınalma, İhracat, İthalat, Gümrük gibi birimlerinde çalışan herkesin eksiksiz bilmesinde çok fayda vardır: “Teslim şekli” anlamında kullanılan “Incoterms” kısaltmaları.

OFİS VE İNSAN

Paylaşımlı Ofis Nedir, Ne Yarar Sağlar?

Paylaşımlı Ofis Nedir, Ne Yarar Sağlar?

Başta mâliyet unsurları olmak üzere muhtelif menfi sebeplerden ötürü salt bir firmaya ya da kuruluşa ait ofisler düzenlenemiyorsa, çare paylaşımlı ofislerde aranmalıdır.

Ofis ortamında bilgisayar ağı kurulumu

Ofis ortamında bilgisayar ağı kurulumu

İki ve daha çok bilgisayarın birbirine bağlanmasına bilgisayar ağı (Network) denir. Ağ içindeki bilgisayarlar birbiriyle iletişim kurabilirler ve veri paylaşırlar.

İŞ DÜNYASI

Linkedln Nasıl Kullanılmalı?

Linkedln Nasıl Kullanılmalı?

Ülkemizde de sıkça kullanılan LinkedIn, profesyoneller için bir sosyal ağ olarak tanımlanmakta. Peki bu ağdan etkili sonuçlar almak için neler yapmalıyız?

HUKUK / MUHASEBE

İkale (Bozma) Sözleşmesi ile Çıkarılan İşçinin İşe İade Davası Açmasını Engellemek Mümkün mü?

İkale (Bozma) Sözleşmesi ile Çıkarılan İşçinin İşe İade Davası Açmasını Engellemek Mümkün mü?

Uzun zamandır İşverenlere iş hukuku alanında danışmanlık yapan bir avukat olarak en sık karşılaştığım taleplerden biri de “Çalışanı işten çıkarmak istiyoruz, tazminatlarını da ödemeye hazırız, ama herhangi bir işe iade davası ile karşılaşmak istemiyoruz” talebidir.

KOBİMOBİL

Krizde Satış Geliştirme

Faruk Şener ile Ekonomik Kriz Yönetimi
tümü

PATRONA TAVSİYELER

Mükemmel bir sistemin 3 Temel Unsuru

Mükemmel bir sistemin 3 Temel Unsuru

İyi bir sistem uçaklardaki otomatik pilot gibidir. Şartları ölçümleyip, buna uygun yöntemlerin hızla uygulanması ile sorunsuz bir ilerleme sağlanır.