19.11.2016

XML

Global Bilgiler  /  at  12:35  /  No comments

Global BilgilerXML Nedir?

Extensible Markup Language(XML), World Wide Web Consortium(W3C ) tarafından geliştirilmiş hiç bir tekelin altında olmayan yani bağımsız bir dildir.

XML’in çıkış tarihi Microsoft’un Net teknolojisinin çıkış tarihiyle kesiştiği için bir çok kişi tarafından Microsoft tabanlı bir teknoloji olarak bilinmektedir. Fakat sanılanın aksine bu teknoloji W3C (World Wide Web Consortium) tarafından tasarlanan bir veri iletişim standardıdır.


XML’ e neden ihtiyaç duyulmuştur?
XML standardı ortaya çıkmadan önce, bir yazılımda veya veritabanında kullanılan verilerin başka bir platforma taşınması sırasında birçok problemle karşılaşılıyordu. İletilen bilgi kümesinde ki veri yapısının, diğer sistemdeki yapıya uygun hale getirilmesi işlemi uzun zaman alıyor ve karmaşık süreçler gerektiriyordu. Ayrıca tasarlanan bu sistem ve fonksiyonların işlem sonucunda başka alanlarda kullanılması mümkün olmuyordu. Bu durumun önlenmesi amacıyla standart bir veri iletim teknolojisinin geliştirilmesi gerekliliği üzerine XML dili ortaya çıkmıştır.

XML’i kavramak .
Üzerinde binlerce makinenin aynı anda haberleşmesini sağlayan bir yapıya sahip Internet gün geçtikçe kavramları, olguları, gelişim, nüfusu ve yoğunluğu ile gündeme oturmaktadır. Gelişim Internet denen dünya ağını öyle bir konumu getirdi ki, artık yalnızca bilgisayarlar değil mobil telefonlar, arabalar, televizyonlar hatta evdeki buzdolabı gibi değişik amaçtaki cihazlar da Internet’e bağlanabiliyorlar. Kendileri bu yeteneğin kazandırıldığı bu aygıtlar değişik amaçlı, fabrikasyon özellikleri farklı, üreticileri, organik yapıları, üzerlerindeki yazılım ve donanım farklı en önemlisi Internet'e bağlanma yöntemleri farklıdır. Buna rağmen bütün bu cihazların birbirleri ile anlaşmalarını sağlayan ortak bir şey var. Bunların hepsi aynı dili konuşuyorlar. Hepsi TCP/IP isimli adap erkânı biliyor. Internet’e bağlanıp diğer aygıtlarla iletişim kurma hünerlerini bu TCP/IP etiketine borçludurlar. Internet’in tutanağı, iletişimin resmi kurallar kümesi olan bu standart dil bu denli bir esneklik sağlanmıştır.
Şahit olduğunuz gibi, çok daha önce, insanlar arasında bile sorun teşkil edebilen iletişim problemini donanım cephesi halletmiştir. Herkesin kendi algoritmasıyla, kendi doneleriyle, kendi bakış açılarıyla ve en önemlisi kendi pazar paylarını dikkate alarak  oluşturdukları yazılımlar, kendi dışındaki yazılımlarla konuşturulmak istendikleri zaman ciddi problemlerle karşılaşılıyordu.  Aslında bu bahsettiğim standart yapı, yazılımların her türlü bileşeniyle diğer yazılımlarla haberleşmesi değil veya her yönüyle ona açık olması değildir. Tek sorun ; zaman ve mekandan etkilenmeden hepsinin aynı veriyi kullanabilmesidir. Yazılımların, yalnızca kendilerinin anlayabileceği bir veri biçimi değil bütün yazılım ve aygıtların rahatlıkla alıp kullanabileceği, çıkarım yapabileceği bir yapı olmalıdır. Her türlü veri(data)nin tek bir formatı olmalı ki bu sorun çözülsün.
İşte bahsettiğim, bahsetmeye devam edeceğim ve gelişmeye açık teknoloji olan XML bu sorunun tek çözümüdür. Kimsenin tekelinde olmayan, World Wide Web Consortium (W3C) tarafından oluşturulan XML, veri yapısının, biçiminin oluşturduğu daralanları genişletecektir. Yazılım dünyasının en önemli argümanı olan Veri’yi  geniş bir paylaşımda, güçlü bir iletişimle kurumsal pazara açacaktır. Böylece hem yeni pazar payları açacaktır , özellikle e-ticaret alanında esneklik sağlayacaktır,  hem de bireysel istekler için kurumsal giriş kapılarını (portallar) açacaktır. XML'in  iş dünyasına getirdiği en önemli şey, kurumların birbirleri ile konuşabilmesi için altyapıyı sağlıyor olması. XML bugüne kadar başarılamayan bir şeyi başardı ve kurumların farklı uygulamalarının birbiri ile konuşabilmesini sağladı.
Terim olarak XML nedir ?
XML'de veri (data), verinin görünüşünden (presentation) ayrıldığı için programlara, özelliklerini kaybetmeden veriyi ortak bir yapıda saklama imkanı sağlamaktadır. Her uygulama bu veriyi dilediği gibi sunabilmektedir.
Veri, bir veritabanında olduğu gibi yapısal özellikleri korunarak saklandığından, yığın olmaktan kurtulmakta ve gerektiğinde filtre edilebilen, sorgulanabilen bilgi olarak saklanmaktadır. XML, doküman ve verinin çok geniş bir yelpazede mantık tanımını yapabilen bir meta dildir. Evrensel ve esnek yapısı nedeniyle kelime işlem uygulamalarından e-iş uygulamalarına varan geniş ve sınırsız bir uygulama alanında kullanılmaktadır.
Web uygulamalarında XML'e ihtiyaç duymamızın önemli sebepleri var. Web sayfaları hazırlarken şu ana kadar kullandığımız HTML, öncelikle sununun, görünüşün nasıl olacağına odaklanmış bir script (betik) dili. HTML taglarının büyük çoğunlu sayfalarımızın şeklen nasıl olacağını belirlemek için kullanılıyor.
HTML'de veri ve biçim iç içe geçmiş durumda. Veriyi, bu sayfanın içinden ayıklamak ve kullanmak mümkün olmamakta.
Kısacası ; XML'de veri ve verinin sayfamızda nasıl gösterileceği birbirinden ayrılmıştır ve verileri, aynı bir veritabanında yer alan veri gibi etkili bir şekilde kullanabilme imkanımız vardır.
XML Extensible Markup Language (Genişleyebilir İşaretleme Dili)
Markup, yazılı metinlerin gösterim aygıtlarda uygun biçimde yayınlamasını sağlayan özel semboller olarak tanımlanıyor. Bu metinin belirli kısımlarının özel bir anlam kazandırmak üzere işaretlenmesi işlemidir. Bu şekilde kullanılan işaretler, kurallar ve gramer kümesi markup language (işaretleme dili) olarak tanımlanır.
Metin ve belgelerin kolay bir şekilde taşınabilmesi, paylaşılabilmesi ve işlenebilmesi için ilk işaretleme dili GML (Generalized Markup Language) 1960 sonlarında IBM’de yapılan araştırma çalışmaları sonunda ortaya çıktı.  GML daha sonra ANSI (American Natitional Stardard Institute) 1978 te oluştuturlan bir grup tarafından geliştirilerek  SGML (Standardized Generalized Markup Language) adı altında 1986 yılında ISO (the International Organization for Standardization) kurumunca uluslararası bir standard olarak kabül edildi . Birçok sektörde aktif olarak kullanılan SGML, belge ve metin sunumda kullanılan standartlaşmış bir sözlük, semboller kümesidir. Yeni biçim dillerinin üretilmesine olanak sağlar. SGML çok güçlü bir dil olmasına rağmen son derece karmaşık yapısı ve yüksek uygulama geliştirme maliyeti bu dilin yaygın bir şekilde kullanımını engellemiştir.
Tim Berners-Lee ve Anders Berlung 1989 yılında internet ortamında belge paylaşımını kolaylaştırmak için Web uygulamalarının temel öğelerinden biri olan HTML (Hypertext Markup Language) dilini geliştirdiler. HTML bir SGML uygulaması olarak geliştirildi. Diğer bir deyişle HTML dilinin yapısı SGML dilinde tanımlandı.  HTML dili çok basit yapısı ile son derece başarılı oldu. 1996 yılında Word Wide Consortium (W3C, http://www.w3.org)’u SGML güç ve esnekliğini içereçek basit bir işaretleme dili oluşturmak amaçıyla XML dilini tasarlamaya başladı.  Şubat 1998’de  XML 1.0 bir standard olarak W3C tarafından yayınlandı. XML dili SGML dilinin bir çok özelliğini içeren basitleştirilmiş dildir.  SGML dilinin  bir alt kümesidir.   XML SGML gibi bir meta dildir. Yani başka dillerin yapısını tanımlamakta kullanılan bir dildir. 
Gelecek yazılarda XML söz dizimi kuralları, XML DTD, XML Schema, XML Namespaces, Xpath, Xpointer, XSL, XSLT, XSLF, SAX ve DOM gibi bir çok belirtim ve teknolojiden anladığım kadarıyla bahsedeceğim.
XML SÖZ DİZİMİ  (SYNTAX)
 XML içerisinde kullanılacak işaretleme ifadeleri;
elemanlar (elements),
varlık referansları (entity refererences),
açıklamalar (comments),
işleme komutları (processing instructions),
CDATA bölümleri,
ve veri tipi tanımlamalarından (document type declaretions) oluşur.
Bir XML belgesi yazılmaya başlandığında bu belgenin bir XML belgesi olduğunu ve hangi versiyonu kullandığını belirlemek için ilk satır, aşağıdaki biçimde yazılmak zorundadır.
<?xml version="1.0"?>


Bundan sonraki anlatımda tablodaki örnek referans olarak alınmıştır.
 



<?xml version="1.0"?>
<tezkere>
       <kime>Mehmet</kime>
       <kimden>Ahmet</kimden>
       <konu>Hatırlatma</konu>
       <mesaj>Murat’ı unutma !</mesaj>
</tezkere>

XML belgesi gövdesi hiyerarşik bir ağaç yapısında oluşmuş belge elemanlarından oluşur. Her bir eleman bir başlangıç ve bitiş etiketi içerir. Örneğin konu elemanı, <konu> başlangıç etiketini, “Hatırlatma” karakter verisini ve </konu> bitiş etiketinden oluşmaktadır. Elemanlar diğer elemanları veya karakter verileri içerebilir. Örnekte “tezkere”elemanı kime, kimden, konu ve mesaj elemanlarından oluşmaktadır. Bir belgenin en üst seviyesinde bulunan eleman kök eleman olarak adlandırılır. Bu örnekte kök eleman “tezkere”tur.
Eleman : 

XML belgesinde veri içeriğinin tutulduğu alanlardır. Elemanlar etiketlerle ayrılırlar. Her bir etiket bir eleman tip ismi (element type name) içerir ve bir çift (“<>”) açı parantezle içe alınır. kime, konu ... gibi. Ancak boş eleman tek taraflı olarak gösterilebilir. <br/> gibi.
İsimler harf,sayı ya da diğer karakterleri içerebilir, bir sayı veya _ (underscore) karakteri ile başlamamalıdır ve boşluk içermemelidir.
XML dili harflerin büyük veya küçük olmasına duyarlı (case sensitive)dır. <araba> ve <Araba> etiketleri aynı değildirler.
<Mesaj>Bu gösterim yanlıştır.</mesaj>
<mesaj>Bu gösterim doğrudur.</mesaj>
Elemanlar  iç içe yuvalandığında yuvalama (nesting) kurallarına uymalıdırlar. HTML’den diğer farkı da budur.
<b><i> Bu gösterim yanlıştır.</b></i>
<b><i> Bu gösterim doğrudur.</i></b>
XML syntax'ında tüm XML dökümanlarının bir root elementi olması gerekmektedir.XML dökümanları içerisinde ilk tag "root tag" olarak isimlendirilir:Bahsedilen bu root elementin altındaki tüm elementler "child element" olarak adlandırılır. Bu child elementler ise daha önceden belirtilmiş olan synax'a uymak zorundadır.Yani elementlerin içiçe geçme durumları belirli bir hiyerarşiye göre olmaktadır.
<root>
  <child>
    <subchild>
    </subchild>
  </child>
</root>
Özellikler (Attributes) : Elemanlara eklemek istediğimiz ek bilgiler özellikler olarak ifade edilir. Özelikler başlangıç etiketi içerisinde isim ve değer ikilileri olarak geçer.

Tarih için özellik kullanmak
Tarih için Element kullanmak

<?xml version="1.0"?>
<tezkere tarih=”10.08.2001”>
      <kime>Mehmet</kime>
      <kimden>Ahmet</kimden>
      <konu>Hatırlatma</konu>
       <mesaj>Murat’ı unutma !</mesaj>
</tezkere>

<?xml version="1.0"?>
<tezkere>
       <tarih>10.08.2001</tarih>
       <kime>Mehmet</kime>
       <kimden>Ahmet</kimden>
       <konu>Hatırlatma</konu>
       <mesaj>Murat’ı unutma</mesaj>
</tezkere>

Açıklamalar HTML’de olduğu gibi “<!--“ ile başlar ve “-->” ile biter. Açıklamalar XML uygulamasında verinin bir parçası olarak görülmezler.


İyi Oluşmuş (Well-formed) ve Doğru (Valid) Belgeler
XML söz dizimi (syntax) kurallarına uyan XML belgeler iyi-oluşmuş (Well-formed) belgeler olarak adlandırılır. Eğer XML söz dizimi hem well formatta hem de yapı bilgilerini aldığı DTD'ye uyumluluk gösteriyorsa bu belgelere doğru (Valid) belgeler denir.

Well Formed XML dökümanı
Valid XML dökümanı

<?xml version="1.0"?>
<tezkere tarih=”10.08.2001”>
      <kime>Mehmet</kime>
      <kimden>Ahmet</kimden>
      <konu>Hatırlatma</konu>
       <mesaj>Murat’ı unutma !</mesaj>
</tezkere>

<?xml version="1.0"?>
<tezkere tarih=”10.08.2001”>
      <kime>Mehmet</kime>
      <kimden>Ahmet</kimden>
      <konu>Hatırlatma</konu>
       <mesaj>Murat’ı unutma !</mesaj>
</tezkere>

DTD (Document Type Declaration): DTD'leri, XML dökümanlarının yapı bilgilerini tutan modüller olarak tanımlamak mümkündür. Döküman içinde kullanılacak olan tüm varlıklar daha önceden DTD içerisinde tanımlanmalıdır. XML veri tanımlaması olan DTD harici veya dahili olarak kullanılabilir.


XML Neden Çok önemli?
  • XML, HTML'e yakın bir dildir.Aslında kardeşi diyebiliriz. Çünkü çıkış kökenleri aynıdır (SGML). HTML bildiğimiz üzere verinin sadece görünümüyle ilgilenen bir dildir. Oysa XML verinin direk kendisiyle ilgilenir. Yani veriyi ayrıca tanımlar ve taşır.
  • XML, HTML dili gibi bir markup dilidir. Belgedeki veriler seçilip işaretlenebilir ve biçim kazandırılabilir.
  • XML geliştiricileri kendi etiketlerini (tag) oluşturabilmektedirler.Bu da XML diline esneklik kazandırmaktadır.
  • Her elemanın başlangıç ve bitiş tag'i vardır.
  • XML ile kod geliştirilirken herhangi bir programlama aracına ihtiyaç yoktur. Tarayıcılarda da yapılabilir.
  • XML dilinin büyük, küçük harf duyarlılığı vardır.
  • XML'in en önemli özelliklerinden biri bir veri tabanındaki verinin dış sistemlere taşınabilmesidir.
  • Farklı veri tabanları veya sistemler arası veri taşımasını sağlayabilir.
  • XML  kod yapısı aslında ağaç yapısı gibidir. Kök, çocuklar ve onların çocukları şeklindedir.
(alıntıdır)

Share

0 yorum:

ZIRAI DON DOLU EROZYON ÇIĞ DÜŞMESİ SU TAŞKINLARI KURAKLIK HORTUMLAR SİS KUVVETLİ RÜZGAR VE FIRTINA ORMAN YANGINLARI HEYELAN SEL BASKINI YANARDAĞ PATLAMASI DEPREMLER TSUNAMİ TRUF MANTARI KUŞ CENNETİ NEMRUT KRATER GÖLÜ COMBATING DESERTIFICATION

Copyright © 2013 Global Bilgiler. WP Theme-junkie converted by Bloggertheme9
Blogger templates. Proudly Powered by Blogger.