XML dil olarak markup dili yaratmaya yarar. Markup dillerine örnek olarak HTML,WML vs. verilebilir. Bu dillerde veriler bazı işaretlerle (etiket) işaretlenirler. Örneğin bir HTML kodunda bir başlık yazısı
etiketi ile işaretlenir. Sonuç olarak bir belgedeki verileri işaretlemeye yarayan dillere markup dilleri denir.
10.2 HTML NEDİR?
HTML (HyperText Markup Language / Hareketli-Metin İşaretleme Dili) basitçe, browserlarla görebileceğimiz, internet dökümanları oluşturmaya yarayan bir çeşit dildir. HTML'e genel bakış Programlama dili gibi görülse de, görülmese de, bugün Internet'in de intranet'lerin de ortak dili, HTML'dir. Bir Web sayfasında yer alan belgenin içindeki bazı kelimeler, simgeler, fotoğraflar, grafik unsurlar veya bunların parçaları bir başka sayfa ile hiper-link kurularak, bağlanmışlardır. Kullanıcı, hiç bir komut öğrenmek zorunda kalmadan, hiç bir bağlantının Internet'teki adresini bilmek zorunluluğu olmadan bu sayfalardaki bağlantıları tıklayarak, yazıdan yazıya, şekilden şekilde, gidebilir. Ta ki, arzu ettiği bilgiyi bulup, okuyuncaya, kendi diskine veya disketine kopya edinceye veya yazıcısında basıncaya kadar. HTML'in başlıca özelliklerini şöyle sıralayabiliriz:
1. HTML, Web tasarımcısına, belgelerini ziyaretçinin ekranında nasıl oluşmasını istiyorsa öyle şekillendirme imkanı verir. Bununla birlikte tarayıcı programlarının (Netscape Navigator veya Internet Explorer) HTML komutlarını yorumlayışlarında az da olsa fark vardır ve bu fark sayfalarınızın bir ziyaretçinin bilgisayarında başta, diğerinin bilgisayarında başka gösterilmesine yol açabilir. Ayrıca ziyaretçileriniz, tarayıcı programlara verdikleri komutlarla, aldıkları sayfalarda genel değişiklik veya kısıtlamalar yapabilirler. Siz sayfanızda ne tür harf türü (font) kullanmış olursanız olun, ziyaretçiniz tarayıcı programa "Sadece Times fontları kullan" demiş ise, sayfanız bu ziyaretçinin ekranında sizin istediğinizden farklı biçimde görülecektir. Ziyaretçi tarayıcı programına "Grafik unsurları gösterme!" demiş ise, sayfalarınız ve tabiî vermek istediğiniz görsel mesaj tamamen farklı bir nitelik kazanacaktır. Bu duruma rağmen, bugünkü şekliyle HTML, Web tasarımcısına adeta bir gazete ya da dergi sayfası tasarlarcasına, oluşturmak istediği görsel etkiyi sağlamasına yeterli tasarım araçları sunmaktadır.
2. Bugünkü imkanlarıyla HTML, Web sayfası terimine yeni bir anlam kazandırmış bulunuyor. "Web sayfası" terimi bile, eski, yani yedi-sekiz yıl öncesinin Web sayfaları, içi bir örnek harflerden oluşan yazılarla dolu, durağan belgelerden ibaret bulunduğu için ortaya atılmıştı. Bugünkü Web sayfalarının "sayfa" kavramı ile dahi ilgisi kalmadı. Bugün sadece HTML öğeleri kullanılarak, ziyaretçinin ekranında adeta bir televizyon programının grafik etkisini sağlamak mümkün. Bununla birlikte HTML, bir kelime işlem ya da masaüstü yayıncılık programının oluşturabileceği görsel özelliklere sahip sayfalar oluşturamaz. Bu kısaltmalara, Internet'i tasarlayan uzmanların, platformlar (Windows 3.x, Windows 95/98/2000, Windows NT, Unix, MacOS), donanımlar (Macintosh, PC, Sun) ve tarayıcı programlar arasındaki farkların, sunulacak malzemenin tasarımcının kastettiğinden tamamen farklı bir şekilde sunulmasına yol açmasını önleme arzusu neden oluyor. HTML, örneğin bir masaüstü yayın programı kadar hassas ölçmelere ve biçimlendirmelere izin verse idi, bu ancak belirli bir platformda, belirli bir program kullanmayı gerektirirdi. Oysa Internet'i Internet yapan unsurların başında, hemen her şeyin ekranda ve kağıt üzerinde, ortak denilebilecek şekilde oluşturulması geliyor.
3. HTML ile oluşturulacak statik alanların içine dinamik sonuçlar doğuracak programlar konulabilir.
10.3 XML NEDİR?
XML (Genişletilebilir İşaretleme Dili) web in işlevselliğini geliştirmek için dizayn edilmiş esnek ve uygulanabilir bilgi tanımlama dilidir.HTML gibi statik ve önceden tanımlanmış bir forma sahip olmayan XML , diğer dillerin tanımlanabildiği bir meta-dildir.Bu sayede değişik tipte dokümanlar için kendi işaretleme dilinizi geliştirebilirsiniz.
Bağımsız bir kuruluş olan W3C (World Wide Web Consortium) organizasyonu tarafından tasarlanan ve herhangi bir kurumun tekelinde bulunmayan XML (eXtensible Markup Language), kişilerin kendi sistemlerini oluşturabilecekleri, kendi etiketlerini tanımlayarak çok daha rahat ve etkin programlama yapabilecekleri ve bu belirlenen etiketleri kendi yapıları içerisinde standardize edebilecekleri esnek, genişleyebilir ve kolay uygulanabilir bir meta dildir.
Çok farklı tipteki verileri orjinal formatlarında tek bir havuzda tutabilen XML, bilgiye hızlı, kolay ve ortamdan bağımsız olarak erişebilme imkanı sunar. Günlük yaşantımızda kullanmakta olduğumuz verilerin %80'ini oluşturan ve "unstructured" olma özellikleri nedeniyle kendi bulundukları medya dışında veri özelliklerini koruyamayan (kelime işlem, elektronik tablo çıktıları, PDF dokümanları, ses,resim vb) farklı tipteki verilerin, oryantasyona gerek duymadan hiyerarşik bir yapıda kullanılabilmelerine olanak vermekte ve bu verilerin hızlı bir şekilde sorgulanabilmelerini sağlamaktadır. Öncelikle veri transferinin kolaylaşmasını ve verinin içerik bilgisiyle saklanabilmesini hedefleyen XML, içerik ve sunum bilgilerini birbirinden ayırır. Bu özelliği ile de HTML'den farklılaşır.
XML bir belgenin yapısını ve görünümünü tanımlamak için kullanılan uluslararası bir standarttır.
XML (Extensible Markup Language - Genişletilebilir İşaretleme Dili) yapılandırılmış belge ve verilerin evrensel formatıdır.
XML tekst tabanlı markup dilidir ve data alış verişinde kullanılan bir standarttır.
XML bilginin yapısını tanımlamak için kullanılan bir teknolojidir.
XML bilgiyi tanımlayan ve web'te bilgi alış verişi için kullanılan standart bir biçimdir.
XML markup dillerini tanımlayan bir meta dilidir.
XML verinin yapılandırılması ve tanımlanması için kullanılan bir teknolojidir.
XML herhangi bir verinin biçimlenmesi,tanımlanması için kullanılan bir teknolojidir.
Yukarıdaki tanımlar birbirine benzemektedir. Bazı kelimeler veri, tanımlama,standart vs. gibi çok fazla kullanılmış. Tanımlardaki bir farklılık XML'in hem bir teknoloji hem de bir dil olmasından doğmaktadır. Bazı tanımlar sadece XML teknolojisini tanımlarken bazıları dil olarak XML'i tanımlamışlar.
Bütün bu tanımlardan şu sonuçlar çıkarılabilir:
XML hem bir teknolojidir hem de bir dildir.
XML dil olarak markup dilleri yaratmaya yarar.
XML verileri tanımlamak için kullanılan bir teknolojidir.
XML verileri tanımlamak için bir standart oluşturmak için yaratılmıştır.
XML verileri standart bir şekilde tanımladığından webte veya herhangi iki program arasında veri alış verişi kolaylaştırmaktadır.
"Önce kendi tag'ini yarat, sonra kullan" diye bilinen XML, aslında web tasarımından çok daha fazlasını sunan bir dil. eXtensible Markup Language, Genişletilebilir Anlamlandırma Dili anlamına geliyor. XML(Extensible Markup Language) HTML ile pek çok açıdan benzerlik gösteren bir markup dilidir.Verinin tanımlanması ve tarif edilmesi için kullanılır.HTML'deki yapinin aksine XML'de kullanılacak olan tag'ler önceden tanımlı değildir.Yani bir XML dokümanının yapısı tamamen kullanıcı tarafından oluşturulur.Verinin tarif edilmesi için DTD adi verilen yapılar kullanılmaktadır.XML ve DTD'nin birlikte kullanılması ile dokümanlar kendini tarif eden bir yapı halini alırlar.
XML ve HTML arasındaki en belirgin fark XML'in verinin kendisiyle ilgilenmesi HTML'in ise verinin sunumuyla ilgilenmesidir.Buna bağlı olarak HTML dokümanları veriye ilişkin şekillendirme bilgilerini içerirken XML dokümanları ise verinin tanım bilgilerini içermektedir. XML'in tasarım amaçlarından biri de verinin taşınmasıdır. XML hakkında bilinmesi gereken en önemli nokta bu dilin veriyi taşımak amacıyla tasarlanmış olusudur. XML ile veriler yapı bakımından modülerlik kazanmaktadır. Bahsettildiği gibi XML dokümanları verinin içeriğiyle ilgilenmektedirler.Bu sayede verilerin içerik,yapı ve sunum kısımları ayrı modüller halinde farklı XML dokümanlarında tutulmaktadır. XML dokümanları Veri Adaları (Data Islands) adi verilen teknik sayesinde HTML sayfaları içerisinde de depolanabilmektedir.Bu teknik sayesinde verinizin sadece sunumuyla ilgilenilmektedir XML ile verinin alışveriş işlemi gerçekleştirilir.XML,yapısının esnekliği sayesinde birbirine uyumlu olmayan sistemler arasında veri alışverişini rahatlıkla gerçekleştirmektedir.
Günümüz bilişim dünyasında bilgisayar sistemleri ve veritabanlarının genellikle birbirine uyumsuz sistemler içerebildiklerini görmekteyiz.Bundan dolayı uygulama geliştiriciler Internet üzerinden bu tip uyumsuz verilerin alışveriş işlemini gerçekleştirmek zorundadırlar. Verinin XML formatına çevrilmesi ile farklı sistemler ve uygulamalardaki verilerin karmaşıklık derecesi indirgenerek alışveriş işleminin kolaylaştırılması sağlanır. XML ile finansal bilgilerin Internet üzerinden alışverişi sağlanmaktadır.
Günümüzde artık hepimizin sıklıkla duyduğu elektronik is kavramı açısından incelenecek olduğunda XML'in önemli fonksiyonları yerine getirdiği görülmektedir.Bahsedilen bu fonksiyonları ile XML geleceğin Elektronik Is dili olarak da yeni bir misyonu üstlenmektedir. XML ile verinin paylaşımı kolaylaştırılır. XML,veriyi düz metin (plain text) formatında saklamasından dolayı veriyi paylaştırma konusunda da hem yazılım hem de donanımdan bağımsız hareket edebilme imkanını sunmuştur. Bu sayede farklı uygulamalarda hareket eden farklı veri tipleriyle çalışmak daha da kolaylaşır.Ayrıca işletim sistemlerinin yükseltilmesi,sunucu,uygulama vb. dışsal faktörlerin yenilenmesi gibi dışsal faktörlerden de asgari ölçüde etkilenilmiş olunur. XML ile verinin depolanması sağlanır. XML, verinin dosyalarda veya veritabanlarında saklanması için de kullanılabilir. XML,yazılım,donanım ve uygulamalardan bağımsız olduğu için verinin daha elverişli olarak kullanımını sağlamaktadır.Yani başka istemci(client) veya uygulamalar tıpkı veri kaynaklarına erişiyormuş gibi XML dosyalarına rahatlıkla erişebilirler. XML,esnek yapısı nedeniyle başka dillerin de oluşturulabilmesine olanak tanır.Wireless Markup Language(WML) mobil cihazları için kullanılan WAP ortamlarının dilidir.
10.3.1 XML Ne İçin Kullanılır?
XML , SGML in web üzerinde kolayca kullanılması için geliştirilmiştir.Doküman türlerinin kolayca tanımlanmasında , SGML tanımlı dokümanların kolay yönetimi ve yazımı ve web üzerinden kolay transferi için bulunmaktadır.
XML herhangi yapısal bilginin saklanmasında ve farklı işleme ortamlarında bilginin transferinin mümkün olmadığı koşullarda bilginin evrensel yapılandırılması için kullanılmaktadır.
10.3.2 SGML Nedir?
SGML farklı türdeki ve yapıdaki dokümanların tanımlanması için kullanılan uluslararası bir standarttır. (ISO8879:1985).
SGML , insan aktivitelerinin bulunduğu tüm farklı doküman türlerinde gerçek konuşma dili ile yazılmış , eski Mısır dilindeki inşa tanımlarından günümüzdeki hayalet uçak teknik dokümantasyonuna; bir hastanın klinik raporundan bir müziğin notasına kadar doküman içeriğinin belirlenmesinde kullanılmaktadır.
SGML çok büyük,güçlü ve karmaşıktır.Son yıllarda endüstriyel ve ticari kullanımda olmasına karşın SGML kullanımı uzmanlık ve kendisini kullanabilecek programların detaylı olmasını gerektirmektedir.XML , SGML in küçültülmüş bir versiyonu olmakla beraber web ortamında implemente edilmesi çok zor olan SGML özelliklerini ortadan kaldırmıştır.
SGML i doküman tanımlamak için izleyen ilk işaretleme dili HTML olmuştur.Basit yapısı , HTML in çok popular hale gelmesine yol açmış ve bu sayede HTML , web in temelini oluşturmaya başlamıştır.
HTML yi izleyen ve bilginin temsil edilmesi için farklı doküman tanımlama ve veri yapısı oluşturma metodolojisi , HTML in bu çok basit yapısının yetersizliğinden kaynaklanmaktadır. HTML yi izleyen yıllarda Java ve Javascriptin uygulamaları , sunucu taraflı dinamik HTML sayfaları oluşturan CGI programları ve CSS ve DHTML gibi teknolojiler geliştirildi.Bu teknolojiler HTML in yeteneklerini geliştirmek için geliştirilmiş olsa da bu yöndeki sıkıntıyı daha da açığa çıkardılar.
Sonuçta XML geliştirildi.
10.3.3 XML Yapısı
XML , yapısının tamamen kullanıcı tarafından oluşturulduğu ve verinin tanımı için DTD(Doküman Tipi Tanımı) yapıları ile içerisinde kullanılacak verinin ve yapısının yapıldığı işaretleme dilidir.
Mesela günümüzde cep telefonlarında kullanılan WAP sayfalarının tanımları , XML meta dilinden türetilmiş olan WML dili ile yazılmaktadır.
10.3.4 XML Kullanımı ve işleme
XML in kullanımı için çok sayıda teknik bulunmaktadır.Buna bir giriş yapmak için XML veri adaları ile başlayalım. XML Veri Adaları , bir HTML sayfasında xml ile yapılan veri tanımının gömülü olması demektir.XML deklarasyonu
Kod:
Tanım ….
şeklinde bir tek değer bağlayıcısı ile yapılarak daha sonra HTML belgeisi içerisinde XML tanımının tanımlayıcısı referans gösterilerek , HTML belgesinden XML verisinin kullanımı gerçekleştirilebilir.
Kod:
XML içeriğinde kullanılan elemanlar ve özelliklerinin kullanımlarından once tanımlanmış olmaları gerekmektedir. Ayrıca doğruluk denetimleri ve XML belgesinin bu doğruluk denetimlerine uygunluğu ve geçerlilik koşulları da bulunmaktadır.
10.3.5 DTD (Doküman tipi tanımı)
DTD , XML belgelerinde kullanılan elemanların uygulamadan uygulamaya fark gösterebilmesi nedeniyle önceden tanımlanması için kullanılan standarttır.DTD , XML dosyasının içerisinde ya da bulunduğu yerin adresinin belirtilmesi yolu ile harici olarak XML belgesi ile ilişkilendirilebilir.
Kod:
Jet A130
Kullanılan herhangi bir XML Parser(XML Ayrıştırıcı) yukarıdaki gibi bir doküman ile karşılaştığında , tanımların belirlenen ucak.dtd içerisinde yapıldığını anlamaktadır.
Yukarıdaki örneğin DTD tanımı izleyen şekilde yapılabilir.Bu tanımların oluşturulma yapıları daha sonar XML grameri bölümlerinde ayrıntılı bir şekilde işlenecektir.
Kod:
Yukarıda sözü geçen kavramların işlenmesi:
İŞLEME - > XML Belgesi - > XML PARSER - >XML DTD Belgesi - > StyleSheet(CSS) - > StyleSheet
Şeklinde gerçekleştirilmektedir.
10.4 WAP NEDİR?
Bugünkü haliyle bazı Web siteleri, durağan HTML sayfalarının birbirlerine köprülerle bağlanması ve ziyaretçinin bu köprüleri tıklayarak, sayfadan sayfaya gitmesi anlamına geliyor. Bu sistemin bir zararı yok: eğer elinizde yeteri kadar HTML kodlayıcısı varsa, aklınıza gelen her şeyi HTML’e çevirebilirsiniz. Sinema listesinden, borsa rakamlarına kadar. Her saniye değişen borsa rakamlarını kaç bir kodlayıcı ile "anında" HTML’e çevirerek Internet’e yetiştirebilirsiniz? Orası sizin bileceğiniz iş. Oysa, ASP, ColdFusion, PHP ve benzeri bir çok çözüm Web sitelerini veri ile yönlendirilen, gerçekten dinamik ve dolayısıyla "program gibi" uygulamalar haline getirdi. Bu "uygulama programları" şeklindeki sitelerin, bir de telsiz olarak Web-yetenekli cihazlara aktarılması Web tasarımcılarının karşısına yeni sorunlar çıkarttı. Bunların başında mini-mini cep telefonu veya biraz büyükçe PDA ekranına uygun Web sayfası yapmak; bunu 14.4k’dan bile düşük bir hızda bu araçlara ulaştırmak; ve Web’de olandan daha üstün bir güvenlik şeması uygulamak.
Bu uğraşların sonucu ise yeni bir Web protokolü oldu.
WAP protokolü ile alınıp verilecek Web siteleri ve diğer uygulamalar, özel bir dille yazılıyor. Bu, XML diliyle geliştirilmiş WML dilidir. Bugün, Web’in ortak dili HTML’in de içinden türetildiği SGML dilinin HTML’den daha kullanışlı ve daha esnek türevi olan XML diliyle istediğiniz kadar 'özel dil' üretebilirsiniz. Örneğin matematikçilerin, bilimsel notasyon ağırlıklı Web siteleri tasarımda kullandıkları MXL böyle bir dildir.
WAP, aslında TCP/IP yoluyla alınıp verilen sayfaların protokolü olan HTTP’den farklı bir Web Server gerektirmiyor. Ancak cep telefonu işletmecilerini düşündüren bir nokta var: o da "para" meselesi. Siz bugün ISS’inizi aradığınız zaman, ulaşacağınız Internet hizmetlerinin hemen hemen hepsinin bedeli, ziyaret ettiğiniz Portal sitelerdeki reklam gelirleriyle ödeniyor. Bunu 640’a 480 piksel genişlikte ve 256 renk derinliğinde bir ekranda, 400 MHz hızında bir işlemciyle ve 128 MB bellekle ve yüz-küsur tuşu olan koca bir klavye yapmak kolay.
Web ziyaretçilerine Web’de alıştıkları türden bir hizmet sunabilmek için, düşük güçtü CPU, sınırlı ROM ve RAM, sınırlı güç kaynağı, örneğin bir cep telefonunun tuşlarından ibaret klavye ve küçücük (ve şimdilik tek renkli) bir ekranla aynı işi yapmak kolay değil. Zorlukların başında sizin Web gezintinizin bedelini ödeyecek bir kaynak bulmak geliyor. Eğer minicik cep telefonu ekranında reklam görmek istemiyorsanız, bu bedeli ödeyecek olan siz olmalısınız. Başka bir ifade ile PC’ de yaptığınız Internet surfing bedava iken cep telefonundan yapacağınız surfing paralı olmalı. Bunu çoğu kişinin kabul etmeyeceği açık.
Bir diğer yol, cep telefonlarına veya Web-yetenekli diğer seyyar araçlara Internet hizmeti sunacak olan seyyar telefon ağı işletmecisinin (bizim örneğimizde Turkcell veya Telsim ve daha sonra hayata atılacak olan diğer firmalar) sizin adınıza bu parayı içerik sağlayıcıdan alması olabilir.
Bu fikir, WAB-Web’in bugünkü Internet’ten farklı olacağı ve eğlence amacıyla değil daha çok pratik kullanım amacına yönelik olarak yararlanılacağı fikrine dayanıyor. Fakat burada dikkat edilmesi gereken nokta 'eğlence' kavramının tanımı. Örneğin WAB-Web ile o anda gidebileceğiniz sinemayı belirleyeceğiniz varsayılıyor. Dolayısıyla sizin bu sinemayı belirlemek ve filmi seçmek için yapacağınız surfing’in bedelini size sinemaların listesini sunan firma ödeyebilir.
Bunun bir sonucu, WAB-yetenekli Web Server hizmetini, cep telefonu işletmecilerinin kurup işletmesi ve içerik sunuculardan parayı doğrudan tahsil etmesi oldu. Fakat daha WAP-Web başlamadan bu metodun işleyeceği anlaşıldı; çünkü klasik HTTP Server’ları işletenler, hatta ücretsiz Web sitesi alanı veren firmalar bile isteyene WAP-yetenekli site açma olanağı tanıdılar. (Örnek olarak, http://www.tagtag.com, http://www.hoiley.com , http://WAPpy.to , ve http://www.WAPdrive.net alanlarına bakabilirsiniz.) İlerde, yani WAP-Web’ler, klasik Web siteleri gibi yaygın hale geldiğinde cep telefonu işletmeciniz (veya ISS’iniz) size cep telefonu işletmecisinin (örneğin Turkcell ile Telsim) onaylamadığı bir Server’a bağlanma imkanı verecek midir? Yerli-yabancı, cep telefonu işletmecilerinin bugünkü tutumuna bakarsanız, verecek gibi görünüyorlar.
WAP, Internet’in cebe girmesini sağlayan protokole verilen isimdir. Normal Internet standartlarını kablosuz cihazlar için de kullanmak varken yepyeni bir standarda ihtiyaç duyulmasının başlıca sebebi seyyar cihazların sınırlı olanaklara sahip olmasıdır. Ayrıca 3G cihazların gerçekte bir telefon olması, bu özel Web’de bir köprüye tıklandığında bir telefon numarasının çevrilmesini mümkün kılabilmeli. Bununla birlikte WAP birçok yönden HTTP protokolüne benzemektedir. WAP’ ın temeli de Web'de olduğu gibi kullanıcının İstem’i (Request) vasıtasıyla veriye ulaşması şeklindedir. WAP cihazlarının veriye ulaşması iki şekilde olabilir: Cihaz doğrudan WAP Server'a bağlanabilir; ya da veriye bir Geçit (Gateway) aracılığıyla ulaşabilir.
Klasik Web modelinde İstemci görüntülenmesini istediği sayfa veya multimedya unsurunun adresini URL kodunda Server’a gönderir. Server, bu İstem’i gerekiyorsa CGI programlarından geçirerek karşılar ve içeriği karşılık olarak verir.
WAP modelinde İstemci cihaz-program grubuna WAE (Wireless Application Environment/Telsiz Uygulama Ortamı) denir. Buradan yola çıkan İstem, URL’den farklı biçimde kodlanır ve Web Server ile WAE arasında aracılık yapan Geçit’e gider. Buradaki kod çözücü program, İstem’i Web Server’ın anlayacağı şekle sokarak yoluna devamını sağlar. Server, İstem’in gerektirdiği işlemleri yapar ve talep edileni Geçit’e gönderir. Geçit bu kez içeriği kodlar ve mobil cihaza gönderir.
WAP içeriği ise Web'de olduğu gibi bir Markup (İşaretleme) diliyle yazılır. XML’den türetilmiş olan bu dile WML (Wireless Markup Language) denir. Bu dilin mantığı da HTML'de olduğu gibi etiketler ve bu etiketlerin eklentileriyle metin, grafik ve diğer nesnelerin tanımlanması şeklindedir. WML’in birçok etiketi HTML etiketlerinden ibarettir; yani HTML bilen kişi kolayca WML öğrenebilir. WML ile formlar, düğmeler, seçme listeleri oluşturmak mümkündür. Cihazlarda bu formların kullanılış biçimi ise cihazın üreticisine bırakılmıştır. WAP da CGI, ASP gibi Web teknolojilerinden faydalanabilir. Ancak HTTP ile WAP arasında önemli farklılıklar da vardır. Önce, WAP sayfasına, Web’de olduğu gibi 'sayfa' değil 'kart' denir; Site de 'deste' diye adlandırılır. WAP'ta 'sayfa' gönderme işlemini etkin hale getirmek için kartlar tek tek değil, deste halinde gönderilir. Bunu bugünkü Web’de bir siteye girdiğiniz zaman sitedeki bütün sayfaların bir anda bilgisayarınıza gönderilmesi şeklinde düşünebilirsiniz. Böylece kartlar arasında offline gezinti yaparak hız sağlanmış olacaktır. WML’in de kendi Script dili vardır; WMLScript adı verilen bu dil Javascript'e çok benzer. WAP’ ın Web’den bir diğer farkı ise telefon fonksiyonlarını kullanmayı sağlamasıdır. Unutmayın; telefon bilgisayarınıza sonradan Modem’le bağlanırken, WAP’da Browser gerçekte bir telefon cihazından ibaret.
BÖLÜM 11: WML(WIRELESS MARKUP LANGUAGE) WAP(Wireless Application Protocol- Kablosuz Uygulama Protokolü): İnsanlar, tarihin her döneminde iletişim için çeşitli yöntemler kullandılar. Dumanla, işaretle, güvercinlerle. Bunlar yazının bulunmasıyla yerini kil tabletler ve papirüslere bıraktı. Sonra iletişimin evreleri yine devam etti. Telgraf, mektup, telefon, fax ve ardından da Internet geldi gündeme. Ve sonra insanlık tarihi, araç telefonları ile kablosuz iletişimi başlattı. Son olarak GSM teknolojisiyle dijital, kaliteli, anında, her zaman, her yerde sesli iletişim imkânı oluştu. Şimdi bu teknoloji ile dünyayı cebimizde taşıyoruz.
Wireless Application Protocol(WAP) yani 'Kablosuz Uygulama Protokolü' yeni gelişmekte olan bir teknolojidir. İletişim alanını genişletmek ve kolaylaştırmak amacıyla düşünülen WAP uygulama protokolü, 90'lı yılların sonunda standard halini aldı. Ve şimdi, geliştirilen programlar sayesinde dünyanın bir çok yerinde uygulamaya geçti.Cep telefonuyla iletişimin çıkmasıyla haberleşme büyük oranda kolaylaştı. GSM Mobil aboneleri, dünyanın neresinde olurlarsa olsunlar GSM kapsam alanı içinde bulundukları sürece dünyanın herhangi bir yeri ile sesli iletişime girebiliyorlar. Ve bu durum iletişim için büyük kolaylık sağlıyordu. Fakat bilgi iletişiminin büyük oranda kablolar üzerinden ve bilgisayara bağımlı kalınarak yapılıyor olması akla kablosuz iletişimi getirdi. Ve böylece cep telefonu için kurulan iletişim ağları üzerinden çalışan bir bilgi akışı sistemi tasarlandı.
Wap (Wireless Application Protocol – Kablosuz Uygulama Protokolü); mobil kullanıcıların, kablosuz mobil cihazlar üzerinden internete erişimlerini sağlayan kablosuz iletişim standardıdır. Yani cep telefona özel Internet’tir. Kablosuz cihazlar ile iletişimde WAP, bilinen XML, UDP ve IP gibi Internet standartlarını kullanır. WAP kablosuz iletişim protokolleri HTTP ve TLS gibi Internet standartları bazında tasarlanmıştır, fakat elde taşınan kablosuz cihazların kısıtlı işlem kapasitelerinin en verimli şekilde kullanılmasını sağlar.
WAP, mobil telefon kullanıcılarının,telefon ya da avuçiçi bilgisayar gibi mobil iletişim cihazlarının ekranları üzerinden internete erişebilmelerini sağlayabilmek için “WAP Forum” tarafından geliştirilen bir kablosuz veri iletişimi (wireless datacom) standardıdır. Wap Forum sadece bir firmaya ait değildir. www.wapforum.com ; Nokia Ericsson ve Motorola gibi şirketlerin öncülüğünde 1997 yılında kuruldu. WAP Forum’ a üye olan kurumların listesine http://www.wapforum.org/who/members.htm adresinden bakabilirsiniz.
Mobil telefonlar gibi kablosuz cihazların sınırlı işlem kapasitesi, HTML sayfaları gibi yüklü bilgilerin ekranlarına taşınamaması, kablosuz iletişim servis ağlarının kapsama alanı problemleri ve sürekli bağlantı sağlanamaması, sınırlı dalga boyunun getirdiği kısıtlamalar gibi problemler bugüne kadar kablosuz iletişimde Internet servislerini mümkün kılmamıştır. Bütün bu problemlerin çözümü olarak geliştirilen WAP, kesintili kapsama alanlarında, çeşitli kablosuz iletişim standartları ile mümkün olduğu yerde IP, yoksa diğer protokolleri kullanarak, kullanıcılara sanal kesintisiz bağlantı sağlar.
Wap; internet haberleşmesinin, çeşitli bilgi ve hizmetlerin WML dilinde yazılmış sayfalar halinde mobil kullanıcılara kolayca ulaşmasını sağlar.
WML(Web Maker Language/Wireless Markup Language): WAP içerikleri için geliştirilen WML programlama dili, kablosuz iletişim terminallerinin ufak ekranlarına gerekli bilgiyi en verimli şekilde sığdırabilmekte ve klavye olmadan tek el ile bilgi taramasını mümkün kılmaktadır. WML, Wap sitelerinin oluşturulmasını sağlayan XML tabanlı bir dildir. WML kodlarıyla yapılan sitelere; gprs, wap uyumlu cep telefonlarından ve palm’lerden erişilebilirler.
Genel olarak WAP için kablosuz uygulama ortamı(WAE) ve kablosuz uygulama protokolü(WAP) tanımlanmıştır.Kablosuz uygulama ortamı(WAE) iki kısımdan oluşur; WML, kullanıcıların uygulama geliştirmesi için kullanılacak programlama dili, ve WMLScript, programcıların daha gelişmiş uygulamalar geliştirmesi için kullanılacak programlama dili. Bu programlama dilleri kulanılarak geliştirilen uygulamalar genel kablosuz yapı üzerinden cep telefonlarına ulaşacak. Bu noktada cep telefonları internette kullandığımız web browser görevi görecektir.Sayfaların cep telefonundan görülebilmesi için WML dili ile yazılmış olması gerekmektedir. WML dili küçük cep telefonu ekranına göre sayfa dizayn etmeyi kolaylaştıran ve klasik web sayfalarının dizaynı için kullanılan HTML diline çok benzeyen bir programlama dilidir. Kablosuz uygulama protokolü(WAP) internetin varolan mimarisine benzer olarak katmanlı bir mimariye sahiptir. Katmanlı mimari farklı amaçlı uygulamaların düzenli hale getirilmesini sağlar. Mesela güvenlikle ilgili işler bir katmanda yapılıyorken, bilginin iletimi başka bir katmanda yapılmaktadır.
WAP’TAN ERİŞİLECEK ADRESİN WML KULLANILARAK OLUŞTURULMASI: Webcam’den alınan görüntünün , mobil telefondan WAP aracılığıyla görülmesi için WML kullanılarak aşağıda belirtilen kod yazıldı. Bu kodda; “HIRSIZ VAR!” link’ine, resmin bulunduğu server’a ait ……………………IP adresinin ……… numaralı Port’undaki “2.jpeg” dosyası atandı. Böylece mobil telefonun WAP erişimi kullanılarak http://........ adresine erişim sağlandı.
WML kullanılarak hazırlanan kod şu şekildedir:
HIRSIZ VARR!!
satırda kartın bir xml türevi olan "wap kartı" olduğu bildirildi.
satırda siteye girildiğinde ekranda çıkması istenilen yazı girildi.
satırda bir link yapıldı.
satırda paragraf kapatıldı.
satırda kart kapatıldı.
satırda ise wml kodunun bittiği bildiriliyor.
Yazılan kod, “index.wml” olarak Easy PHP Server’ın “www” klasörüne kaydedildi.
12. SONUÇ Projenin yapılma amacı; elektronik güvenlik sektörüne yenilikler getirmektir. Bu projede; mobil telefon ve alarm sistemi birleştirilerek güvenlik sistemi dünyasına yeniliklerin katılması amaçlanmıştır.
Projede donanımsal olarak; Intruder alarm paneli, dış etkiler karşısında hareletsiz kalan kızılötesi dedektör, webcam ve GPRS modem (veya GPRS modem olarak kullanılacak olan başka bir donanım, mobil telefon gibi) kullanılmıştır.
Alarm bölgesi, bir davetsiz misafir (hırsız) tarafından uyarılır. Burada hareketi PIR dedektör tetikler ve alarm bölgesi aktif hale gelir.Bilgisayara seri port ile bağlı olan panel, alarm bilgilerini bilgisayara gönderir. Seri porttan alarm bilgileri alındığında; Java ile yazılan program ve yüklenilen Java Media Framework (JMF) aracılığıyla, webcam devreye girer ve görüntü alınır. Alınan görüntü programda belirtilen, harddiskin belirli bir bölgesine kaydedilir. Görüntü alma işlemi yapıldığı sırada, alarm paneli mobil telefonu arar. Çağrıyı gören mobil telefon kullanıcısı WAP uyumlu bir mobil telefonun “Tarayıcılar” kısmındaki “Yeni URL Giriniz:” bölgesine http://18.104.22.168:8080/2.jpeg adresini girerek alarm panelinin bulunduğu yerden alınan görüntüye erişebilir. Bu sayede kişi, alarm yanlışlıkla çaldığında alarmın takılı olduğu yere gitmek zorunda kalmaz.
Sonuç olarak çeşitli metodlar kullanılarak .jpeg uzantılı bir dosya mobil telefona transfer edilmiş oldu. Bu projenin yardımıyla, alarm kuşağındaki bilgiler mobil iletişim hayatına aktarılmıştır.