tarafından yayınlanmıştır.

Benzer belgeler
XML Teknolojisine Gerçekçi Yaklaşım

Üst Düzey Programlama

Bütün XML dökümanlarının bir kök elemanı olmalıdır. Diğer bütün elemanlar kök elemanı tarafından kapsanır.

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

FIRAT ÜNİVERSİTESİ BİLGİSAYAR MÜH.

BTP208 İnternet Programcılığı II XML ve XML Uygulamaları. (1. Kısım)

2. HTML Temel Etiketleri

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri

İNTERNET PROGRAMLAMA II. Tanımlar

Selective Framebusting

XML İşaretleme Dilinin Etkinliği Üzerine Bir Çalışma

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

Mobil Cihazlardan Web Servis Sunumu

BLM 6196 Bilgisayar Ağları ve Haberleşme Protokolleri

API geliştiricileri. Web server ile yapılan entegrasyonun neticeleri. API Dokumantasyonu

VERİ MADENCİLİĞİ (Web Madenciliği)

WEB TASARIMI. Đnternet Nedir?

XML (Extensible Mark-up Language) Hüseyin Kaya

WEB TASARIMINDA TEMEL KAVRAMLAR

Html temelleri. Ders 4

<html> <head> <title>sayfa Başlığı</title> </head> <body> Bu benim ilk sayfam <b>bu metin koyu</b> </body> </html>

4. Bağlantı (Köprü) Oluşturma

XML'in Temelleri. XML veri tanimlamayi saglayan ve verilerin alisverisinde kullanilacak standart bir format olarak kullanilan bir dildir.

DITA ile Uygulama Belgeleri Hazırlamak

UBL UBL Türkiye Özelleştirmesi TEMEL BİLGİLER

Web Tasarımının Temelleri

Web Programlama Kursu

e-fatura UYGULAMASI (Entegrasyon Kılavuzu) Şubat 2010 ANKARA e-fatura Uygulaması (Entegrasyon Kılavuzu) Şubat 2010 Versiyon : 1.

Internet: Tarihçe ve Kavramlar

Elbistan MYO Güz Dönemi Öğr.Gör. Murat KEÇECİOĞLU

Metin Text Kutuları. Metin kutusu oluşturmak için <input> tagı kullanılır.

e-yazışma Projesi TBD Kamu-BİB Aylık Bilgilendirme Toplantısı

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

İNDEKSLEYİCİ İÇİN HTML BELGENİN XML BELGEYE DÖNÜŞTÜRÜLMESİ ÜZERİNE BİR UYGULAMA

MODÜL 3 HTML İLE STİL ŞABLONLARI

Basit bir web uygulaması

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Öğr. Gör. Serkan AKSU 1

JSON Korsanlığı. Mesut Timur, Şubat 2010, WGT E-Dergi 4. Sayı

KÜTÜPHANECİLİKTE STANDARTLAŞMA VE MARC-XML ÇÖZÜMÜ

HTTP & HTML BİRİNCİ BÖLÜM. HTTP Nedir? HTTP Safhaları Nelerdir? Protokol ve Eklentiler. HTTP Servisleri. HTTP Nedir? HTML Nedir?

TÜİK e-vt Teknik Kılavuz

Cite While You Write özelliği

Web Madenciliği (Web Mining)

Büyük, Dağıtık, Veri Yoğunluklu Uygulamalarda Programlama Paradigmaları

YZM 3215 İleri Web Programlama

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

TÜİK e-vt. Web Servis Kılavuzu

Netsis e-fatura UBL-TR v1.2 Geçişi

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım

DİZİN. Not: Koyu harfle yazılan sayfalar ilgili terimin yoğun olarak geçtiği sayfaları göstermektedir.

Vodafone dan Office 365. Satış temsilcisi ismi Tarih

SBE16 / Akıllı Metropoller Ekim 2016 / İSTANBUL

HTML (Hyper Text Markup Language)

ENVİSTA ARM MERKEZ YAZILIMINA VERİ AKTARMA PROSEDÜRÜ

Müzik Verileri İçin XML Tabanlı Diller

WEB TASARIMININ TEMELLERİ

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.


1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

Üst Düzey Programlama

İşletme Bilgi Yönetimi. Doç. Dr. Serkan ADA

Kaynak Kod Güvenliği Bir Güvensiz API Örneği

Üst Düzey Programlama

XBRL. Şükrü ŞENALP Yeminli Mali Müşavir Sorumlu Ortak Baş Denetçi

Temel Bilgi Teknolojileri - I Ayrıntılı Ders İçerikleri

PHP 1. Hafta 2.Sunum

4.41. WEB DE GENÇ TEKNİK: AJAX. Fırat Üniversitesi Fen Bilimler Enstitüsü, Elazığ. Fırat Üniversitesi Teknik Eğitim Fakültesi,

ELIF KIOTZEOGLOU RESUL MURAD MERT PACOLARI

2-Hafta Temel İşlemler

İSMET AKTAR ANADOLU TEKNİK LİSESİ BİLİŞİM TEKNOLOJİLERİ ALANI WEB PROGRAMCILIĞI DALI

e-fatura Uygulaması (Zarf Yapısı) Versiyon : 1.4 2/10

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

Dünyada Veri Kaçağı ve Veri Kaçağı Önleme (DLP) Sistemleri Tahsin TÜRKÖZ Bilişim Sistemleri Güvenliği Grubu

3. Metin ve Görünüm Etiketleri

Kurumsal bilgiye hızlı ve kolay erişim Bütünleşik Belge Yönetimi ve İş Akış Sistemi içinde belgeler, Türkçe ve İngilizce metin arama desteği ile içeri

Özgür Yazılımlarla Web Programlama. Özlem Özgöbek

ICATT ÇEVİRİ UYGULAMASI SİSTEM MİMARİSİ VE VERİTABANI TASARIMI

Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu

İNTERNET TABANLI TEST HAZIRLAMA VE DEĞERLENDİRME PROGRAMLAMA ARAYÜZÜ

Seo Raporu halikoltukyikama.com

WEB TASARIMIN TEMELLERİ

XAML Dili Microsoft Blend. Tasarım ve Kodlamanın. Birbirinden Ayrılması

Akdeniz Üniversitesi

Internet te Pazarlama

Enformasyon Bilimlerine Fütüristik Bir Yaklaşım

HTML 5 ve CSS 3. Yrd. Doç. Dr. Murat Olcay ÖZCAN

KURUM AĞLARINI ÖNEMLĠ ZARARLI YAZILIM SALDIRILARINDAN KORUMA. Osman PAMUK

Ç NDEK LER 1 XML E G R fi 1 XML Nedir? 1 XML in Avantajlar 3 HTML ve XML Aras ndaki Farklar 4 XML Dosyalar n Görüntülemek 6 XML Dosyas Oluflturmak 9

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

İNTERNET PROGRAMCILIĞI - II

Akademik Rapor Hazırlama ve Yazışma Teknikleri

1.PROGRAMLAMAYA GİRİŞ

TEMEL KAVRAMLAR. Bütünlük ve değişmezlik - Integrity Elektronik belgenin oluşturulmasından sonraki aşamalarda orijinal halini muhafaza etmesidir.

Esra G. Kaygısız Gaziantep Üniversitesi

Yazılımlarının İncelenmesi

Transkript:

XML Teknolojisi İlk resmi işaretleme dili olarak gösterilen GML (Generalized Markup Language), 1969 yılında, yasal belgelerin kolay bir şekilde paylaşılabilmesi ve taşınabilmesi amacıyla, IBM den Goldfarb, Mosher ve Lorie üçlüsünün yaptığı araştırmalara ve GCA GenCode komitesinin yaptığı çalışmalara dayanmaktadır. 1986 yılında SGML (Standard Generalized Markup Language) adını alarak, ISO (International Organization for Standardization) kurumu tarafından uluslararası standart (ISO 8879) haline getirildi. SGML bir metin veya belge kümesinde kullanılan dilin yapısını belirtmek için kullanılan bir dildir. Tüm meta dillerde olduğu gibi, temel bir sözdizimi tanımlar ve bunu kullanarak kendi elemanlarınızı tanımlamanıza izin verir. Büyük endüstri kuruluşlarında ve basın sektöründe bir belgeleme standardı olarak kullanılmaya devam edilmektedir. Mesela, Oxford ingilizce sözlüğü, SGML daha taslak versiyonu karmaşık bir DTD (Dokuman Type Declaration) tanımlanmaktaydı. Bu dil geçiş ile yayında özel aramalar yapılabildi ve arama sonucunda ilgisiz kayıtların gelmesi engellendi. Sözlüğe yeni kelimelerin eklenmesi kolaylaştırıldı. SGML çok güçlü bir dil olmasına rağmen, yaratıcıları ve W3C (Word Wide Consortium) üyeleri tarafından, karmaşık yapısı ve yüksek uygulama geliştirme maliyet dolayısıyla, Internet tabanlı uygulamalar özellike hızlı ve kolay web yayınları için tercih edilmemiştir. 1989 yılında Tim Berners-Lee ve Anders Berlung internet ortamında daha kolay belge paylaşabilmek için HTML (Hypertext Markup Language) dilini bir SGML uygulaması olarak geliştirdi. Başka bir deyişle HTML dilinin yapısal tüm elemanları, SGML dilinde tanımlanmıştır. HTML dili bir belgenin içerdiği başlık, font, resim ve tablo gibi bilgileri bilgisayar ortamında, standart bir şekilde görüntülemek ve biçimlendirmek için geliştirilmiş bir dildir. Öğrenilmesi ve uygulanması kolay olduğu için HTML yeni gelişmekte olan web in süratle temelini oluşturmaya 1

başlamış olup sunum amaçlı ve daha önceden tanımlanmış sabit bir etiket kümesi içermektedir. Standart etiket kümesini kendimizin ekleyeceği yeni etiketler ile genişletemeyiz. HTML in içerik yönetiminden çok içeriği görüntüleme amaçlı olması, genişleyebilir bir dil ve meta bir dil olmamasından dolayı, Internet ortamında yeni bir dile ihtiyaç duyulmuştur. XML in ilk taslak versiyonunun ardından Şubat 1998 de tarafından yayınlanmıştır. XML 1.0 bir standart olarak W3C 2

HTML HTML (Hypertext Markup Language), web sayfalarının formatlanması amacıyla yazılmış, bir SGML uygulaması olup önceden tanımlanmış standart etiket kümesine sahiptir. Herbir etiket, sayfanın formatlanmasına dair özel anlam taşır. Etiketler web tarayıcıları tarafından işlenir ve ilgili içeriğin formatlanmış hali, tarayıcı ekranında görüntülenir. XML XML(eXtensible Markup Language), SGML in güç ve esnekliğini taşıyan basitleştirilmiş, genişletilebilir bir işaretleme dilidir. SGML in alt kümesi olarak gösterilir ve HTML gibi işaretleme etiketlerini kullanır. XML işaretleme etiketlerinin, içeriğin ne anlama geldiğini (metadata) tanımlamak için kullanılmasıdır. XML meta bir dildir. Yani, yeni işaretleme dillerini yaratabilme becerisine sahiptir. XML veriyi ve verinin anlamsallığını, belirli geçerlilik kuralları çerçevesinde, belirli bir formatta saklayan bir dökümandır. 3

XML Fonksiyonsuz LISP Acrobatsız PDF Ticari anlamsallığı(semantic) olmayan EDI Kelime işleme anlamsallığı olmayan RTF Sıkıştırma olmayan ZIP Multimedyasız FLASH Daha fazla karakter içeren Mors Alfabesi Daha fazla kontrol karakteri içeren Unicode XML in özellikleri Avantajları: Bu özelliği sayesinde, içerik bilgisinin yanı sıra, içeriğin ne anlam taşıdığını (metadatasını) yapısal bir formatta tutar. Örneğin bir kitabı tanımlayan elemanları; başlığı, yazarı, bölümleri, bölüm yazıları ve kataloğudur. <book> <title>xml for Dummies</title> <persons> <author>ed Tittel</author> <author>norbert Mikula</author> <author>ramesh Chandak</author> </persons> <published by publishing-house="hungry Minds" covers="soft"/> </book> 4

Bir bölüm yazısını tanımlayan elemanlar ise paragrafları, satırları ve dipnotlarıdır. Kitabı bu şekilde yapısal tanımlayan bir döküman yaratmak, hem makine hem de insan tarafından okunabilirlik sağlar. Eğer yazardan, kitabın katalog bölümünde bahsedilirse, yapısallık bozulmuş olur. Çoğu metin dosyası bu önemli avantaja sahip değildir. Sadece içerik bilgisini ya da en fazla, buna ek olarak, ini uzantılı dosyalardaki gibi, tek seviyeli metadata bilgisini tutarlar. Sadece içerik bilgisi tutan dosyalarda verileri ayırmak için, genelde virgül ve benzeri karakterler kullanılır. Yapısallık olmadığından okunabilirlik de ortadan kalkar. XML dökümanlarını yazmak için maliyeti yüksek editörlere gerek yoktur. XML dökümanları, içerik bilgisini ve metadatayı yapısal tutarak büyük bir avantaja sahip olmalarına rağmen, bazı projelerde XML e ihtiyaç duyulmadan basit metin dosyaları kullanılarak daha verimli sonuçlar elde edilebilir. Birkaç parametreyi ve değerlerini, tek seviyeli tutmak için, yaratılacak konfigürasyon dosyasını, XML dökümanı yapmak gereksizdir. XML genelde farklı sistemler arası iletişimi sağladığından dolayı, insan için okunabilir olması aslında çok fazla birşey değiştirmez. Asıl hedef sistemlerin entegrasyonudur. Mekanizma işlemeye bir kere başladıktan sonra, insanlar belkide uzunca bir süre sisteme 5

dokunmayacaklardır. Fakat formatlı ve okunabilir olması uğruna, dosya ebatları büyültülmüş, ağ trafiği yoğunluğu arttırılmış olur. Diğer dosya formatları ve veritabanlarının en büyük dezavantajlarından birisi, üzerlerinde işlem yapmak için gereken araçların çok pahalı olmasıdır. Bu dezavantaj XML dökümanları için geçerli değildir. Çünkü XML işleme araçları dünya çapında çok yaygındır ve ucuzdur. Düzenli bir yapıya sahip olan XML dökümanlarını işlemek amacıyla birçok ayrıştırıcı tasarlanmıştır. Ayrıştırıcıların çoğu tarayıcılar tarafından otomatik olarak desteklenir. W3C, xml dökümanlarını işleyebilmek ve ayrıştırabilmek amacıyla ulusal bir method yaratmıştır. DOM(Document Object Model) adı verilen method, ayrıştırma işlemi için en çok kullanılan tekniklerden biridir. Ağaç-tabanlı işlem modeli olarak da adlandırılır. Geliştirilen ayrıştırıcıların çoğu bu metoda göre tasarlanmıştır. DOM The Document Object Model (DOM) [12] is a platform and language-neutral interface that allows programs and scripts to dynamically access and update the content, structure and style of Web documents. XML dökümanlarının işlenmesi sadece ayrıştırma demek değildir. Ayrıştırılan döküman verileri üzerinde ilave olarak başka işlemler de yapmak gerekebilir. Aslında çoğu uygulamalarda, ayrıştırma, birçok adım içerisinden ilkidir. Bazı organizasyonlar, ulusal ayrıştırma metodu olan DOM un gerçek iş yaşamı uygulamalarında, çok da pratik olmadığını ve kaynakları kötü kullandığını savunmuştur. Çünkü DOM metodunda, büyük ebatlı dökümanlar da dahil olmak üzere, tüm dökümanlar, bellekte ağaç tabanlı bir modele oturtulur. 6

XML teknolojisi, mevcut internet ve ağ altyapısını desteklediğinden dolayı, bu altyapılar için belirlenen güvenlik kavramlarına, getirilen çözümler, XML için de geçerlidir. Geçerli olan güvenlik kavramları; Authentication, kullanıcının gerçekten doğru kullanıcı olup olmadığının belirlenmesi; XML belgelerinin iletilmesi sırasında dijital imza ve sertifikaların kullanılması Encryption, verilerin şifrelenmesi; XML in HTTPS üzerinden SSL protokolü kullanılarak iletilmesi. (XMLHTTP objesi) Authorization, bulunduğunuz yerdeki veriye ulaşım hakları (görüntüleme, okuma, yazma, okuma-yazma); Döküman ve protokoller üzerinde uygulanan mevcut tekniklerin XML dökümanlarında da uygulanması XML varolan yöntemleri ve protokolleri destekler, fakat teknolojinin çalışma mantığından dolayı, yeni tehditlere açıktır. Mesela, XML dökümanları içerisinden, URI(Uniform Resource Identifier) kullanılarak, harici DTD dosyalarına referans edilmesi, bu risklerden bir tanesidir. XML dökümanını kullanan kullanıcılar, referans edilen URI kaynağının güvenli olup olmadığını bilmeden işlemlerine devam ederler. Kaynağa erişen bir saldırgan, DTD üzerinde çeşitli oynamalar yapabilir; OPTIONAL tipte bir özelliğin tipini REQUIRED yapabilir Özelliklerin varsayılan değerlerini değiştirebilir DTD içerisinde geçen varlıkların (entity), içerik metinleri veya referans ettikleri notasyonlar değiştirilerek, çeşitli virüslerin aktive edilmesi sağlanabilir Ya da, URI kaynaklarının saldırıya uğrayarak ulaşılamaz hale getirilmesi, XML in geçerlilik işleminin iptal olmasına yol açar. XML tek başına basit olabilir, fakat XML in resmi tasarım hedefleri arasında yer alan, ayrıştırma, işleme, entegrasyon, mesajlaşma ve transformasyon gibi işlemler o kadar da kolay değildir. 7

XML in bir sistem tarafından anlaşılabilir olması için, sistemde bir yerlerde bir kod parçasının, döküman etiketlerinin ne anlama geldiğini bilmesi gerekir. XML standart bir döküman formatı yaratmamızı ve onu kolayca ayrıştırabilmemizi sağlar, fakat her şirket ya da kurum, ortak bir standart yerine, kendi standardını belirlediği için, farklı kurumlar arası haberleşme olabilmesi için, bir ayrıştırıcının yapabileceğinden çok daha fazlasına ihtiyaç vardır. Gerçek hayatta işletmeler, oturup hangi standartlarda veriyi göndereceklerinin anlaşmasına varmalıdır. Bilgi sistemlerinde geçen dil kavramında genelde bir programlama dilinden bahsedilmesine karşın, XML, C++ ya da Delphi gibi bir programla dili değildir, bir işaretleme dilidir. Aslında XML kullanılarak programlama dilleri yazılmaya çalışılmıştır. Fakat kullanılmaları zor olduğu için, uygulama geliştiricileri tarafından edilme tercih edilmemiştir. Function MerhabaDunya : Boolean; Begin Write( Merhaba Dünya ); Result := True; End; <Function Name= MerhabaDunya Type= Boolean > <call function= Write > <param type= String >Merhaba Dünya</param> </call> </Function> XML öğrenmesi, okunması, uygulanması ve test edilmesi kolay bir teknolojidir. B2B gibi uygun uygulamalarda geliştirme zamanını oldukça kısaltır. Sadece bir döküman formatı olmasına rağmen RPC mesajlaşması gibi birçok uygulamada kullanılır. XML açık bir standartdır, sürekli bir gelişim içersindedir ve yeni araçlar yazılmaktadır. Problem, XML in kullanımına uygun olmayan senaryolarda bile uygunmuş gibi görülüp kullanılmaya çalışılması, insanların doğası gereği, yeni çıkan teknolojileri tüm problemlerde uygulamak istemesidir. 8

Referanslar Harold, E.R., XML Bible, IDG Books Worldwide Inc., United States of America, 1999 DuCharme, Bob, XML: The Annotated Specification, Prentice Hall, 2000 Goldfarb, Charles F., XML Handbook, Pearson Education,2001 KILINÇ, D., Kut, Alp, XML Teknolojisine Gerçekçi Yaklaşım, Akademik Bilişim, 2006. Carlos Delgado-Kloos, Variations on XML, The European Journal for the Informatics Professional, Vol. VI, No. 1, February 2005. K Mockford, Web Services architecture, The European Journal for the Informatics Professional, Vol. VI, No. 1, February 2005. http://www.xml.org web sitesi http://www.xml.com web sitesi 9