|
XML'e
Giriş
XML(eXtensible
Markup
Language-Genişleyebilir
Anlamlandırma
Dili)
hakkında
birşeyler
duymuşsunuzdur
muhakkak;
onun Web
üzerinde
veri
alışveriş
methodunu
değiştireceğini,
HTML’in
bir nevi
kardeşi
olduğunu,
ama tabi
ki SGML(Standard
Generalized
Markup
Language)’in
bir alt
kümesi
olduğunu.
XML
üzerine
uygulamalar
geliştirmek
onu
kendi iş
süreçlerinize
dahil
etmek
istiyorsanız
XML’i
biraz
daha
geniş
olarak
inceleyen
bu
yazıyı
okumanızı
tavsiye
ederim.
İlk önce
SGML’i
incelemekte
fayda
görüyorum.
Sonuçta
bu bir
giriş
olduğuna
göre
temeli
sağlam
atmalıyız.
SGML
International
Standards
Organization(ISO)
tarafından
1986
yılında
kabul
edilmiş
ve
onaylanmış
bilgi-yönetimi
standardıdır.
SGML
platform-bağımsız
ve
uygulama-bağımsız
dökümanlar
yaratmak
sağlamak
için
oluşturulmuştur.
Dilbilgisi
gibi bir
mekanizma
kullanılarak
dökümanların
yapısını
özel
tanımlanmış
tag’ler
kullanarak
yapısını
tanımlamamıza
yarar.
SGML bir
meta-dildir.
Meta-dil
demek
dil
yaratmaya
yarayan
dil
demektir.
(Yapay
zeka’da
metaknowledge’in
knowledge
about
knowledge
olduğu
gibi.)
Örneğin
HTML,
SGML’den
türetilmiş
bir
anlamlandırma
dilidir.
Aynı
şekilde
XML’de
temel
olarak
SGML’e
dayanır.
İlginç
olan
XML’in
SGML
gibi bir
meta-dilden
türemesine
rağmen
kendisi
de bir
meta-dil
olmasıdır.
Yani
XML’den
de yeni
diller
türetilebilir.
XML’i
içeriğin
nasıl
görüneceğinden
ziyade
içeriğin
yapısını
tanımlamada
kullanırız.
Diğer
taraftan
HTML
dökümanın
nasıl
gösterileceğini
belirtir,
dökümanın
ne
olduğundan
hiç
bahsetmez
DTD
Diğer
önemli
bir konu
ise
DTD’dir.
HTML’de
dikkat
ettiyseniz
ilk
satır:
<!DOCTYPE
HTML
PUBLIC
"-//W3C//DTD
HTML 3.2
FINAL
//EN">
olarak
görünür.
Burada
Web
browser’a
html’in
hangi
DTD’sini
kullanacağı
söylenir.
Burada
DTD
Document
Type
Declaration’dır.
Fakat
kesinlikle
bu
XML’de
ileride
kullanacağımız
DTD yani
Document
Type
Definiton
ile
karıştırılmamalıdır.
HTML’deki
Document
Type
Declaration
bize
hangi
tür bir
dökümana
sahip
olduğumuzu
söylerken
, XML’de
Document
Type
Definition
ise
dökümanın
syntax’ının
geçerli(valid)
olduğu
yerleri
tanımlar.
Aslında
ileride
DTD’yi
geniş
olarak
ele
alacağız
ama
kısaca
açıklayacak
olursak:
DTD
parser’ın
izleyeceği
kuralları
belirler.
Dökümanda
ne gibi
elemanların
olduğunu
ve bu
elemanların
neler
yaptığını
açıklar.
Ayrıca
DTD
dökümanın
tag
yapısının
ve
içeriğindeki
organizasyon
hiyerarşisinin
önceden
tanımlanmış
HTML
kurallarına
uyup
uymadığını
kontrol
etmek
için
parser
tarafından
kullanılır.
Şimdi
aklınızdan
geçenleri
tahmin
edebiliyorum,
biraz
karışık
gibi
görünüyor
ama
uygulama
yapınca
DTD’nin
ne kadar
kolay
birşey
olduğunu
anlayacaksınız.
Biraz
daha
sabır.
XML'in
Gelişimi
Internetin
ilk
yıllarında
birkaç
HTML
tag’i
kullanarak
gri web
sayfaları
yapmak
oldukça
büyük
bir
işti.
Ama
zamanla
insanlar
bunun
çok iyi
bir
reklam
aracı
olabileceğini
farkedip,
üzerinde
çalışmaya
başladılar.
Birçok
grafiksel
öğe
geldi,
insanlar
tasarım
yapmaya
başladılar.
Bunu
Html 2.0
ve 3.0
izledi.
Gün
geçtikçe
internetin
altyapısı
da
düzeldi.
Türkiye’de
inanılmaz
bir ISS(Internet
Servis
Sağlayıcı)
patlaması
yaşandı.
Paket
fiyatları
düştü
düştü ,
firmalar
bu
rekabetten
oldukça
etkilendi
ve
geriye
oldukça
köklü
firmalar
kaldı.
Internet
2.
boyutunu
yani
insanlardan
bilgi
toplama
yakalamıştı.
Ve halen
belki de
bu
boyuttayız.
Asp bize
sunucu
taraflı
uygulamalar
geliştimeye
olanak
tanıdı
hem de
cgi,
perl
gibi
dilleri
bilmeden
sadece
Vbscript
ile bunu
yapmamızı
sağladı.
Artık
web
sayfaları
dinamik
içerik
sağlıyordu,
sizin
kim
olduğunuzu
anlayıp
size
özel
işlemler
yapıyordu
ki, veri
transferinin
önemi
oldukça
büyüdü.
Artık
herşey
veriye
bağlanmıştı.
Bir web
sitesinin
arkasına
SQL
Server’lar,
Oracle’lar
SAP R/3
sistemleri
durmaya
başlamıştı.
İşte XML
bu veri
değişimi
işlemini
kolaylaştırmak
için
doğdu.
3. kuşak
internette
de bu ve
yeni
teknolojiler
kullanılarak
insan
faktörü
ön plana
çıkacak
ve
etkileşimli
web
siteleri
yapılacak.
B2B ve
B2C’ler
yerini
Marketplace’lere
bırakacak.
Biz şu
an 2.
kuşağı
yaşayan
ama 3.
kuşağa
geçmeye
hazırlanan
bir
ülkede
bulunuyoruz.
XML ile
veri
değişiminin
kolay
hale
gelmesi
hedeflenmişti
ve
başarıldı.
Artık
sizin
verilerinizi
alacak
sistemin
ne
olduğunu
bilmeniz
ve ona
göre
çıktı
üretmeniz
gibi
birşey
söz
konusu
değil.
Siz bir
XML
paketi
oluşturup
karşı
sisteme
yolluyorsunuz.
O da bu
paketi
açaral
kendi
sistemine
dahil
ediyor.
Yani
artık
internet
aracılığıyla
farklı
sistemler
veri
değişiminde
aynı
dili
konuşuyor:
XML.
|