Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

1 İNTERNET PROGRAMCILIĞI - 1 XML Öğr.Gör. Serkan KORKMAZ Harran Üniversitesi Birecik Meslek Yüksekokulu.

Benzer bir sunumlar


... konulu sunumlar: "1 İNTERNET PROGRAMCILIĞI - 1 XML Öğr.Gör. Serkan KORKMAZ Harran Üniversitesi Birecik Meslek Yüksekokulu."— Sunum transkripti:

1 1 İNTERNET PROGRAMCILIĞI - 1 XML Öğr.Gör. Serkan KORKMAZ Harran Üniversitesi Birecik Meslek Yüksekokulu

2 2 GİRİŞ Günümüzde iletişim yaşamın vazgeçilmez bir parçasıdır. Herkesin ortak bir dili kullanması için çeşitli denemeler yapılmıştır. Bu çabalar bir sonuca ulaşmamıştır ama zamanla İngilizce yaygınlaşarak insanların ortak anlaşma dili durumuna ulaşmıştır.

3 3 GİRİŞ Bilişim dünyasında da programlar arasındaki iletişimin gerçekleşmesi, farklı sistemler arasında veri alışverişinin sorunsuz olması için ortak yapılar, standartlar oluşturma çabaları devam etmektedir. Bu çabalardan birisi XML dilidir.

4 4 GİRİŞ Bu modülde verilerin platformdan bağımsız olarak dolaşımını sağlamak amacıyla üretilmiş XML dilini öğreneceksiniz.

5 5 XML Dili XML, farklı bilgisayar sistemleri arasında veri iletmek için tasarlanmış yazılım ve donanımdan bağımsız bir dildir. XML (Extensible Markup Language) kavramının Türkçesi Genişletilebilir İşaretleme Dili’dir. Bu dil bilgisayar dünyasında bazı ihtiyaçların giderilmesi amacıyla geliştirilmiştir. Veri aktarmak HTML sayfalarıyla yapılabiliyordu. Örneğin borsa verilerini dağıtan bir sayfadan bilgi almak mümkündü. İnternette her türlü veriye ulaşılabiliyordu fakat verileri tanımlamak, analiz etmek, yeniden biçimlemek mümkün değildi. İşte bu ihtiyaçları gidermek için istenildiği kadar genişletilebilen ve tekrar biçimlendirilebilen bir yapıya sahip XML geliştirildi.

6 6 XML Dili XML uyumsuz (incompatible) sistemler arasında veri alışverişi için kullanılabilir. Bilgisayar programları uyumsuz formatlarda veri tutarlar. XML’nin kullanım alanları Internet uygulamaları ile sınırlı olmayıp geliştirilme amacı, birbiriyle bilgi alışverişi yapması istenen uygulamalar için ortak bir dil sunmaktır. Verinin XML’ye dönüştürülmesi, veriyi farklı türdeki uygulamalar (farklı işletim sistemleri üzerinde çalışan, farklı firmalar tarafından yazılmış, farklı dillerle yazılmış vs. uygulamalar) tarafından okunabilen veri haline getirerek veri alışverişinde yaşanan sıkıntıyı büyük ölçüde azaltır. XML belgeleri hangi uygulama tarafından kullanılacaksa biçimlendirilerek o uygulamaya uyumlu hale getirilir.

7 7 XML Dili XML, verileri metin tabanlı tanımlar. XML belgeleri, verilerin etiketlenerek bir düzen içinde tutulduğu metin dosyalarıdır. XML ile düz metin dosyaları veri paylaşmak için kullanılabilir. XML verileri düz metin formatında saklandığından XML yazılım ve donanımdan bağımsız şekilde veri paylaşımını mümkün kılar. Bu durum farklı uygulamaların çalışabileceği verilerin oluşturulmasını kolaylaştırır.

8 8 XML Dili XML belgeleri, verileri tutmak amacıyla kullanıldığından verilerin birbirleriyle olan ilişkileri de belirtilmelidir. Etiketleme işlemi verilerin birbiriyle ilişkilerini belirlemek için kullanılır. Örneğin, elimizde aşağıdaki veriler olsun.

9 9 XML Dili Burak Eren Polis Yunus Hızır Savcı Bu verilere bir kimlik kazandırmak ve aralarındaki ilişkiyi belirlemek için etiketler kullanalım.

10 10 Meslekler Burak Eren Polis Yunus Hızır Savcı

11 11 XML Dili Bu örnekte “Burak, Eren, Polis, Yunus, Hızır, Savcı” bilgileri arasındaki ilişki belli değildir. “Eren” kelimesi ayrı bir ismi mi yoksa “Burak” isimli elemanın soyadını mı ifade etmektedir? “Polis” rastgele konmuş bir kelime midir yoksa Burak”ın mesleği midir? İşte bilgiler arasındaki doğru ilişkilendirmeyi kurmak için etiketlendirmeler kullanılmıştır. Dikkat edilirse HTML’ye benzer bir etiketlendirme mantığı kullanılmıştır.

12 12 XML Dili HTML’den farklı olarak XML’de veri ile verinin sunumu (verinin istenilen biçimde gösterilmesi) birbirinden ayrıdır. Bu durum XML’nin yararlarından biridir. Böylelikle farklı stil sayfaları kullanarak XML belgesinden birçok biçimlendirilmiş sayfa üretebilir.

13 13 XML Dili XML, HTML’nin türetildiği SGML (Standart Generalized Markup Language) dilinden türetilmiştir. HTML’de bütün tanımlamalar, adlar bellidir ve bunların dışına çıkılmaması gerekir. XML’de asıl önemli olan veridir. XML belgelerinde biçimlenmemiş veriler bulunur ve etiket adlarını belirlerken, belli temel kurallara bağlı kalmak koşuluyla herhangi bir tanımlayıcı isim kullanılabilir. XML, HTML gibi ücretsiz bir dildir.

14 14 XML Dili Örnekte,, gibi elemanlar kullanılmıştır. Bir başkası bu bilgileri tutmak için farklı eleman isimleri kullanabilirdi. Örneğin,,,. XML’nin yaygınlaşmasını sağlayan bu esnekliğin dezavantajı da vardır.

15 15 XML Dili Farklı uygulamalar arasında veri alışverişinde farklı elemanların kullanılmış olması sıkıntılara neden olur. Veriyi yorumlamak ve anlamlı bilgi çıkartmak için XML okuyucuları ve yazıcıları standart bir eleman yapısına ihtiyaç duyarlar. Bu amaçla çeşitli sektörlerde verilerin tutulması için XML’den alt diller türetilmiştir. Standartlaşmayı sağlamak açısından bu sektörel alt diller de HTML gibi standart etiket adlarına sahiptir fakat işleyiş açısından XML’yi temel alır. World Wide Web Konsorsiyumu (W3C), finans, sağlık, sigorta, yayıncılık, trafik, emlak, seyahat, din ve akla gelebilecek her sektör için XML tabanlı ortak alt diller oluşturmaya devam etmektedir. Kurumlar birbirleri ile bilgi alışverişi yaparken, bu alt dillerden kendileri ile ilgili olanını alıp serbestçe kullanabileceklerdir.

16 16 XML Dili XML ile E-Devlet uygulamalarında olduğu gibi farklı kurumların birbirleriyle olan iletişimi de daha kolay olacaktır. Veriler başka kurumlar tarafından kullanıldığında yeniden sorgulanabilir ve biçimlendirilebilir olacaktır. Örneğin, hastaneye giden bir vatandaşın tedavisi yapılmadan önce nüfus merkezinde tutulan veritabanından alınan veriler istemci program tarafından kolaylıkla anlaşılabilecektir. Internet bankacılığını kullanan birisi bağlı bulunduğu belediyenin veritabanını sorgulayarak vergisini öder duruma gelebilecektir. Bu tür uygulamaları gerçekleştirmek veri aktarımında ortak bir dilde birleşildiği için eskisine göre daha kolay olacaktır.

17 17 XML Dili XML, HTML’nin yerini almak için üretilen bir dil değildir. Aksine HTML ile XML birlikte kullanılıp daha yetenekli veri sayfaları oluşturulabilir. XML’in kullanım alanı internet ile sınırlı değildir. Birbiriyle bilgi alışverişi yapması gereken uygulamalar için ortak bir dil olarak kullanılabilir. Böylelikle birbirinden bağımsız, tamamen ayrı sistemler XML aracılığıyla bilgi alış verişinde bulunabilirler. Paylaşmanız gereken verileri XML biçiminde dağıttığınızda verinizi alan bütün uygulamalar bilgiyi anlamlandırabilecektir.

18 18 XML Dili XML belgesi içinde yer alan veriler, etiketlerle tanımlandıklarından hem bilgisayarlar hem de insanlar tarafından okunabilir. Tabii ki kimi karmaşık (kompleks) belgelerin anlaşılması zordur, uygulamalar tarafından okunabilir. İnternet üzerinde XML iki türlü kullanılabilir: İstemci tarafında ya da sunucu tarafında XML belgelerini işlemek

19 19 XML Dili Sunucu tarafında işlenen XML verileri HTML biçiminde iletilirler. Bu, sunucu bilgisayarlara yük getiren ve genellikle önerilmeyen bir yöntemdir. Zaten bu şekilde yeniden tanımlanabilen veri aktarmak mümkün olmaz ve bu işlem veriyi XML olarak yayınlamamak, XML’yi amacına uygun kullanmamak anlamına gelir. Sunucu tarafında XML çalıştırmanın sebebi XML’i desteklemeyen eski web tarayıcılarda yaşanan sorunları önlemektir.

20 20 XML Dili Sunucu, kendisine gelen istek vasıtasıyla istemcideki tarayıcının ne olduğunu anlayıp, XML biçimlemelerini kabul edip etmeyeceğine karar verir. İstemcinin tarayıcısı XML uyumlu ise istenilen sayfayı gönderir. Tarayıcı XML uyumlu değilse XML belgesini biçimleyip tarayıcının anlayabileceği, biçimlendirilmiş hazır kodlar gönderir.

21 21 XML Dili XML uyumlu web tarayıcılar sunucudan gelen verileri alıp biçimlendirebilirler. İstemci bilgisayara XML belgesi ile birlikte biçim bilgilerinin bulunduğu bir başka dosya da gönderilebilir. Varsa bu biçim dosyasını (stil sayfası, stil şablonu) da beraberinde yükleyen web tarayıcı programı biçim dosyasına bakarak XML belgesindeki verileri gösterir. XML belgesine, ziyaretçinin kendi seçebileceği bir stil sayfası uygulanabilir.

22 22 XML Dili XML için standart biçimleme dili olarak XSL önerilmektedir. Her yeni teknoloji gibi XML’nin de geliştiriciler tarafından benimsemesi için eski kalıplara destek sunması gerekmektedir. Bu amaçla CSS biçim dosyalarını kullanarak XML verilerini biçimlemek mümkündür. XML yeni diller oluşturmak için kullanılabilir. Örneğin, WML (Wireless Markup Language) XML’den türetilmiştir.

23 23 XML Dili XML belgesi oluşturabilmek için Not Defteri gibi metin düzenleme programlarından biri kullanılabilir. Ayrıca sadece XML veri alanlarını düzenlemek için oluşturulmuş programlar da tercih edilebilir. Örneğin, XML Notepad programı Microsoft’un sitesinden ücretsiz olarak indirilebilir.

24 24 XML Dili XML ile veriler daha fazla kullanıcının kullanımına açıktır. XML, donanım ve yazılımdan bağımsız olduğundan veriler standart HTML tarayıcılarının dışındaki yazılımlar tarafından da kullanılabilir. Diğer istemciler ve uygulamalar XML belgelerine erişebilirler.

25 25 XML Dili Veri tabanlarında tutulan veriler, web ortamındaki bilgisayarlar arasında veri paylaşımı için sıklıkla XML verilerine dönüştürülür. İnternet sitesi kullanıcılarına veri tabanını erişmek için izin vermek güvenlik açısında bir risktir. Bu nedenle veri tabanındaki verileri XML verilerine dönüştürerek paylaşmak güvenlik açısından daha uygundur.

26 26 XML Dili XML’in en yaygın kullanım alanlarından biri elektronik ticaret uygulamalarıdır. XML, tedarikçiler, müşteriler, iş ortakları vb. kurumlar arasında bilgi paylaşımında avantaj sağlar. XML ayrıca yayıncılık sektöründe de kullanışlıdır. XML olarak saklanan bilgi, her tür yayıncılık formatına kolaylıkla dönüştürülebilir. XML’nin dünyadaki her uygulama tarafından tanınması için uygulama geliştiricileri W3C konsorsiyumunun kurallarına bağlı kalmaktadırlar.

27 27 XML Dili HTML dosyalarının yapısı ve HTML dosyaları oluşturmak için kullanılan etiketler (örneğin, ) önceden tanımlanmıştır. XML belgesinin yapısını ve etiketlerini ise uygulama geliştiricisinin kendisi oluşturur. Personel ile ilgili verilerin bulunduğu yukarıdaki örnekte geliştirici olarak kendi etiketlerimizi kullandık. XML, HTML’nin yerini alması için tasarlanmamıştır. XML, HTML’nin tamamlayıcısıdır. XML, verileri tanımlamak için kullanılırken HTML verileri biçimlendirmek ve görüntülemek için kullanılır.

28 28 XML ile HTML Arasındaki Fark HTML veri görüntülemek için tasarlanmıştır ve verinin nasıl göründüğüne odaklanır. HTML dili bir belgenin formatlanması amacıyla daha önceden tanımlanmış bir etiket (tag) kümesine sahiptir. XML veri tanımlamak için tasarlanmıştır ve verinin ne olduğuna odaklanır. XML verinin nasıl görüneceğiyle ilgili veri içermez. XML belgelerinden elde edilen verilerin sayfadaki görünümünü ayarlamak için CSS, XSLT stil sayfaları kullanılır.

29 29 XML ile HTML Arasındaki Fark XML verileri yapılandırmak, depolamak, göndermek için oluşturulmuştur. Yukarıdaki örnekte görüldüğü gibi XML’de veri kendi içinde bir yapıya sahiptir. Bu şekilde XML belgesinde tutulacaktır ve ihtiyaç duyulduğunda gönderilecektir. Verileri görüntülemek için HTML kullanıldığında veriler HTML içinde tutulur. XML ile veriler ayrı XML belgelerinde tutulabilirler. Bu yöntemle verilerdeki herhangi bir değişiklikte HTML kodlarında değişiklik yapmak gerekmez. HTML sadece verileri istenilen yerleştiriliş düzeninde görüntülemek için kullanılır.

30 30 XML ile HTML Arasındaki Fark HTML’de bazı etiketler kapatılmadan kullanılmaktadır. Örneğin, etiketi. XML’de ise tüm etiketler kapatılmalıdır. XML’de etiketler büyük küçük harf duyarlıdır. ile farklı etiketlerdir. Zuhal DOĞRU Zuhal YANLIŞ

31 31 XML ile HTML Arasındaki Fark XML’de etiketler düzgün sırayla kapatılmalıdır. Malzeme listesi YANLIŞ Malzeme listesi DOĞRU Aralık (space) tuşu, sekme (tab) tuşu ya da yeni satır tuşu ile elde edilen boşluğu ifade eden beyaz boşluk (white space) XML’de korunur. HTML birden fazla olan beyaz boşluk karakterini tek beyaz boşluğa indirir. HTMLMerhaba Dünya ÇıktıMerhaba Dünya XMLMerhaba Dünya ÇıktıMerhaba Dünya

32 32 XML ile HTML Arasındaki Fark HTML etiketlerindeki kimi hatalara rağmen HTML tarayıcıları belgeleri gösterir. XML belgelerindeki hatalarda ise XML uygulamalarının çalışması durur. HTML dosyalarının uzantısı html veya htm’dir. XML belgelerinin uzantısı xml’dir.

33 33 XML Söz Dizimi (Syntax) Kuralları XML yazım kurallarını örnek bir XML belgesi üzerinden anlatalım. XML belgesinde verilerin aşağıdaki gibi dizilerek oluşturduğu görünüme ağaç görünümü (tree view) denir.

34 34 XML Söz Dizimi (Syntax) Kuralları personel.xml

35 35 XML Söz Dizimi (Syntax) Kuralları Personel.xml belgesinin ağaç yapısı Personel.xml belgesinin ağaç yapısındaki her kutuya düğüm denir.

36 36 XML Söz Dizimi (Syntax) Kuralları personel.xml belgesinin tarayıcıdaki görüntüsü

37 37 XML Söz Dizimi (Syntax) Kuralları XML belgesinde etiketler ve etiketler arasında belirtilen veriler bulunmaktadır. Etiket ve veriden oluşun birime eleman (öge, element) adı verilir.

38 38 XML Söz Dizimi (Syntax) Kuralları Eleman isimleri aşağıda kurallara uymalıdır. İsimler harf, rakam ve diğer karakterleri içerebilir. İsimler rakam veya noktalama işaretleriyle başlayamaz. İsimler boşluk içeremez. Eğer birden fazla kelime kullanılmak isteniyorsa kelimeler arasındaki boşluk yerine alt çizgi kullanılabilir. “-“ (tire), “.” (nokta), “:” (iki nokta üst üste) karakterlerini kullanmaktan kaçınılmalıdır. Bazı yazılımlar bu karakteri farklı anlamlarda yorumlayabilir. İsimler “xml” harfleriyle başlayamaz. (XML, xml vs.)

39 39 XML Söz Dizimi (Syntax) Kuralları XML belgeleri sıklıkla kendisiyle ilişkili bir veri tabanına sahiptir. Bu açıdan veri tabanındaki isimlendirme kurallarını XML belgelerinde de kullanmak yararlı bir uygulamadır.

40 40 XML Söz Dizimi (Syntax) Kuralları Belgenin ilk satırındaki bildirim XML sürüm (version) bilgisi ve kullanılacak dil kodlamasını tanımlar. Örnek belgede XML 1.0 sürümü ve “utf-8” dil kodlaması kullanılacağı belirtilmiştir. Bildirim XML elemanı olmadığından kapanış etiketi kullanılmamıştır.

41 41 XML Söz Dizimi (Syntax) Kuralları İkinci satır belgenin personel isimli kök (root) elemanını tanımlamaktadır. XML belgeleri sadece bir kök elemanına sahip olabilir. Kök eleman yavru elemanları (child elements) içinde barındırır. Yavru elemanlara sahip elemana ana (parent) eleman adı verilir. Tüm elemanlar yavru elemanlara sahip olabilir. Yavru elemanlar ana elemanlar içinde düzgün bir şekilde yerleştirilmelidir.

42 XML Söz Dizimi (Syntax) Kuralları

43 43 XML Söz Dizimi (Syntax) Kuralları Genişletilmiş halde personel isimli kök eleman ve daraltılmış halde eleman isimli yavru eleman

44 44 XML Söz Dizimi (Syntax) Kuralları Daraltılmış halde personel isimli kök eleman

45 45 XML Söz Dizimi (Syntax) Kuralları XML’de açıklama satırı eklenmesi aşağıdaki şekilde yapılır. Örnek üzerinden gösterirsek şu şekilde bir açıklama satırı kullanılabilir. ………………………………..

46 46 XML Söz Dizimi (Syntax) Kuralları XML’de bazı karakterler özel anlam taşır. XML elemanları içinde “<” karakteri kullanıldığında hata oluşur. Çünkü ayrıştırıcı (parser) bu karakteri yeni bir elemanın başlangıcı olarak yorumlar. Bu tür özel karakterler yerine aşağıdaki tablodaki değerler kullanılır. << >> && '' ""

47 47 XML Söz Dizimi (Syntax) Kuralları XML’de özellik (attribute) değeri tek veya çift tırnak işareti içine alınmalıdır. XML söz dizimi (syntax) kurallarına uyan XML belgelerine iyi biçimli (well formed) XML belgesi denir. NOT: XML belgelerinin iyi biçimli olup olmadığını test etmek için o belgeyi tarayıcınızda açınız. Bir hata varsa tarayıcınız bu hatayı görüntüleyecektir.

48 48 1 Nutuk M.Kemal Atatürk Kanarya 2 Mesnevi'den Seçmeler Mevlana Serçe 3 Çalıkuşu Reşat Nuri Güntekin Doğan kitaplar.xml belgesinin ağaç yapısını çiziniz.

49 49 XML Söz Dizimi (Syntax) Kuralları Kitaplar.xml belgesi yukarıdaki gibi yapılandırıldığı gibi geliştiricinin tercihine göre farklı şekilde de yapılandırılabilir. Örneğin, aşağıda kitabın birden fazla yazara sahip olduğu durumları da ele alan ve kimi elemanları özellik olarak belirleyen örnek verilmiştir.

50 50 Mesnevi'den Seçmeler Mevlana Serçe Bu belgelerin ağaç yapısını çiziniz.

51 51 Serkan KORKMAZ Mehmet YILMAZ Örnek XML Belgesi

52 52 Örnek XML Belgesi

53 53 Örnek XML Belgesi

54 54 Öğrenci Listesi ibrahim halil unurlu özge sarpkaya

55 55 Kitap Listesi 1 Çalıkuşu Reşat Nuri Güntekin Serçe 2 Aşk Elif ŞAFAK Yurt

56 56 Kimlik Bilgileri Ahmet KILIÇ BİRECİK Fatma ÇİÇEK Hemşire ŞANLIURFA

57 57 Ürün Bilgileri 125 Cep Telefonu 200 TL NOKIA u Bilgisayar 1500 TL IBM ThinkCentre 175 Televizyon 500 TL Arçelik A-25

58 58 Çiçek Bilgileri Gül 5 TL Kırmızı Aşk Orkide 25 TL Beyaz Temizlik Karanfil 2.5 TL Mor Dostluk


"1 İNTERNET PROGRAMCILIĞI - 1 XML Öğr.Gör. Serkan KORKMAZ Harran Üniversitesi Birecik Meslek Yüksekokulu." indir ppt

Benzer bir sunumlar


Google Reklamları