Bölüm 3 – Geçerli-XML Belgeleri Oluşturmak

Slides:



Advertisements
Benzer bir sunumlar
X86 Assembly Programlama Dilinde
Advertisements

Web Bilgi Girişi Kullanım Rehberi
PDKS SİSTEMİ
PROGRAMDA YAKLAŞIK MALİYETİ İKİ TÜRLÜ HAZIRLAMANIZ MÜMKÜNDÜR.
Ülke, Şehİr ve bÖlge tanimlamasi
HTML, XHTML and CSS XHTML
Tur Tartı Tanımlama. Tur kartı açmak için Tanımlar menüsünün altındaki Paket Tur Listesi seçeneğine tıklanır.
2. AŞAMA BELGE KAYDI.
İSİM UZAYLARI.
Bölüm 6 –Kompleks Tip Şema Tanımları İçindekiler 6.1Kompleks Tip Şema Nedir? 6.2Element Tanımlarını Referans Göstermek 6.3İsimli Tip Tanımları 6.4Elementlerin.
Bölüm 4 Seçme Komutları Koşul İfadesi if Komutu Bileşik Komut
STİL SAYFALARI GELİŞTİRMEK
Ertan Deniz Öğretim Görevlisi.
Bölüm 5 –Şemalar İçindekiler 5.1Neden Şema? 5.2Şemaların Yapısı 5.3Basit Tip Element Tanımı 5.4Kendi Tiplerimizi Tanımlama 5.5 Önceden Belirlenmiş İçeriklerden.
BELGELEME Ian Sommerville, “Software Documentation”,
Dizi (array) değişkenleri
Veri Tabanı Normalizasyonu Devrim ALTINKURT
Elektrik-Elektronik Mühendisliği Bölümü DİZİLER C Programlama Dili Yaz Stajı Cengiz TEPE SAMSUN 2007.
HATA AYIKLAMA.
Operatörler.
XML TEKNOLOJİLERİ BTP 206. Ders İçin Gerekli Olan Ders Kitabı –XML, Zafer Demirkol, Pusula Yayınları Yardımcı Ders Kitabı –XML How To Program, Deitel.
EVRE 1 BLOK 1 Uygulamalı Bilgisayar Eğitimi Öğr. Gör. A. Murat ERGİN E.Ü.T.F. Biyoistatistik ve Tıbbi Bilişim A.D.
XML Genişletilebilir İşaretleme Dili (eXtensible Markup Language), hem insanlar hem bilgi işlem sistemleri tarafından kolayca okunabilecek dokümanlar oluşturmayı.
VERİ TABANI VE YÖNETİM SİSTEMLERİ  Birincil Anahtar Türleri  Access Veri Tabanında Bulunan İlişkiler  İlişkileri Tanımlama Bir – Çok İlişkisi Çok –
Bölüm 2 – XML Belgeleri Oluşturmak
Fonksiyonlar Fonksiyon nedir?
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 9. Tek değişkende birden fazla bilgi tutulmak istendiğinde kullanılır. Kullanım şekli: var dizi_adı= new Array(eleman1,
NESNE TABANLI PROGRAMLAMA -METOTLAR-
KISITLAMALAR (Constraints)
T.C. MİLLİ EĞİTİM BAKANLIĞI
XML NEDİR? XML platformdan bağımsız veri taşıyabilen işaretleme dilidir. XML datanın tanımıyla ilgilidir. HTML gibi bir işaretleme(Markup) dilidir. Document.
FONKSİYONLAR.
.  HTML gibi işaretleme etiketlerini kullanan, verilerin depolanmasını sağlayan ve bu verileri metin formatında saklayan bir dildir.  HTML ile XML.
Problem / Hedef Ağacı.
Çoklu dallanma seçimi: switch
Bilgisayar Programlama
GML (Geography Markup Language)
OLAY, İMKÂNSIZ OLAY, KESİN OLAY
TASARIM BELGELERİ DİLARA SOLMAZ.
PHP Dosya İşlemleri.
XML ve XML Teknolojileri
İNTERNET PROGRAMCILIĞI I
PARÇACIĞIN KİNEMATİĞİ Düzlemde Eğrisel Hareket
WORD WORD UYGULAMA.
Dersi Özeti Kursun içeriğini özeti Alt başlıkları Proje Kurs esnasında kullanmayı planladığımı editörler HTMLe giriş Temel etiketler Notepad+’da.
Yrd. Doç. Dr. Murat Olcay Özcan
BISON (YACC) (Yet Another Compiler Compiler)
Raporlama Menüleri Emine TUNÇEL Kırklareli Üniversitesi, Pınarhisar Meslek Yüksekokulu.
Yapısal Tasarım Araçları
UNV13107 TEMEL BİLGİ TEKNOLOJİSİ KULLANIMI. Veri tabanı Bilgisayar ortamında saklanan düzenli verilerdir. Bilgisayar ve ağ ortamındaki bilginin temel.
Regüler İfadeler ve Regüler Diller
 Staj süresi, toplam 50 işgünüdür. Bu sürenin 25 işgünü ENT 200 fabrika stajını, 25 işgünü de ENT 300 büro stajını kapsar. Öğrenci, bölümde geçirdiği.
 Staj süresi, toplam 50 işgünüdür. Bu sürenin 25 işgünü ENT 200 fabrika stajını, 25 işgünü de ENT 300 büro stajını kapsar. Öğrenci, bölümde geçirdiği.
Web Tasarımı 2.Hafta. HTML Nedir  Hyper Text Markup Language (Hiper Metin İşaretleme Dili) web sayfalarını oluşturmak için kullanılan standart metin.
DERS: MESLEKİ BİLGİSAYAR MODÜL -3: İŞLETİM SİSTEMİNİN KULLANILMASI.
©Natica IT Consulting 2012, Proprietary & Confidential XXX Projesi Navigasyon Eğitimi GG.AA.YYYY.
İleri Excel 1 Fuat Tosun.
İleri Word Eğitimi Eğitim İçerikleri Bilgegüç Bilişim Danışmanlık.
STRING İŞLEMLERİ.
Yazılım Mühendisliği Standartları
Dosya Yönetimi.
ARŞİV KATALOGLARINDA STANDARTLAŞMA SORUNLARI: DEVLET ARŞİVLERİ GENEL MÜDÜRLÜĞÜ ÇEVRİMİÇİ ARŞİV KATALOĞU Prof. Dr. Hüseyin ODABAŞ Çankırı Karatekin Üniversitesi.
Excel’de VBA Programlama (Visual Basic Application)
STRING İŞLEMLERİ.
Bilgisayar Bilimi Problem Çözme Süreci-2.
AC500 Eğitim Sunumları 3. Değişken Tanımlama.
Dspace Kurumsal Arşİv KullanIm kILAVUZU
NİŞANTAŞI ÜNİVERSİTESİ
Psikolojiyi Tanımlamak
Sunum transkripti:

Bölüm 3 – Geçerli-XML Belgeleri Oluşturmak İçindekiler 1.1 Geçerli XML Belgeleri 1.2 DTD 1.3 Element Tiplerini Tanımlamak 1.4 Element İçerik Tipleri 1.5 Element İçeriğini Tanımlamak 1.6 DTD’de Nitelik Tanımlamaları 1.7 DTD’yi Ayrı Dosya Olarak Tanımlama 1.8 Özet

Giriş Geçen bölümde “iyi-biçimli” XML belgesi nasıl oluşturulur konusundan bahsetmiştik. Herkesin kolayca XML belgesi oluşturabileceğini görmüş olduk Ama bu uygulamalar için yeterli değildir. Belgenin yapısı hakkında bilgiye sahip olamamız gerekir.

Giriş

Dökümanı Tanımlamak Neden Önemli? Giriş Dökümanı Tanımlamak Neden Önemli? Standartlaşma ve yaygın kullanım MathML , CML,AML Standartlaşmış veya geniş kabul gören bir döküman tanıtım belgesi

DTD (Document Type Definition) DTD, XML belgesinin giriş kısmına eklenir. DTD <!DOCTYPE işaretlemesi ile başlar. Daha sonra root elementin ismi yazılır. Köşeli parantezler içinde tip tanımları yapılır. <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [<! Tip tanımlaması_1> <! Tip tanımlaması_2> <! Tip tanımlaması_3> ]> <turlar-rehberi> <tur> <tur-adi cinsi="kültür gezisi">Ege Turu</tur-adi> <güzergah>Ayvalık, İzmir, Çeşme, Kuşadası, Aydın</güzergah> <baslangic-tarihi>07-07-2004</baslangic-tarihi> <bitis-tarihi>07-08-2004</bitis-tarihi> <ulasim>Otobüs</ulasim> <konaklama>3,4 yıldızlı oteller</konaklama> </tur> </turlar-rehberi>

Element Tiplerinin Tanımlamak <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (#PCDATA)>]> ]> <turlar-rehberi> Ege Turu </turlar-rehberi> Eğer DTD tanımına bağlı kalarak döküman oluşturursak bu dökümana “geçerli” döküman denir. İyi oluşumlu Geçerli

Element İçeriğini Tanımlamak Element_sira.xml <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(tur-adı,güzergah, başlangıç-tarihi)> <!ELEMENT tur-adı(#PCDATA)> <!ELEMENT güzergah(#PCDATA)> <!ELEMENT başlangıç-tarihi(#PCDATA)> ]>

Element İçeriğini Tanımlamak Element_secenek.xml <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(tur-adı | güzergah | başlangıç-tarihi)> <!ELEMENT tur-adı(#PCDATA)> <!ELEMENT güzergah(#PCDATA)> <!ELEMENT başlangıç-tarihi(#PCDATA)> ]> Seçenekleri Artırmak Eklenen karakter Açıklama + Element bir yada daha çok kullanılabilir. * Element sıfır yada daha çok kullanılabilir. ? Element sıfır veya bir kere kullanılabilir.

Element İçeriğini Tanımlamak Element_secenek.xml <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(tur-adı? | güzergah | başlangıç-tarihi)> <!ELEMENT tur(tur-adı | güzergah | başlangıç-tarihi)+> <!ELEMENT tur(tur-adı , güzergah , başlangıç-tarihi | bitiş-tarihi)> <!ELEMENT tur(tur-adı , güzergah , (başlangıç-tarihi | bitiş-tarihi)+)> <!ELEMENT tur(#PCDATA | tur-adı | güzergah | (başlangıç-tarihi )*> <!ELEMENT tur-adı(#PCDATA)> <!ELEMENT güzergah(#PCDATA)> <!ELEMENT başlangıç-tarihi(#PCDATA)> ]>

ANY ve EMPTY içerik tanımlaması Her türlü olasılıkta içerik kullanımını tanımlar.DTD’nin en esnek tanımlamasıdır. <!ELEMENT tur (tur-adı,güzergah, (başlangıç-tarihi | bitiş-tarihi)+)> tanımlaması yerine <!ELEMENT tur ANY> yazılabilir. EMPTY Boş içerikli elementler için EMPTY ifadesi kullanılır. <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(resim)> <!ELEMENT resim EMPTY> ]>

DTD’de Nitelik Tanımlama Nitelik_tanımlama.xml <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(tur-adı,güzergah, başlangıç-tarihi)> <!ELEMENT tur-adı(#PCDATA)> <!ELEMENT güzergah(#PCDATA)> <!ELEMENT başlangıç-tarihi(#PCDATA)> <!ATTLIST tur cinsi CDATA #IMPLIED> ]> XML dosyasında <turlar-rehberi> <tur cinsi=“kültür”> .......... ...........

DTD’de Nitelik Tanımlama Nitelik Tipleri Niteliğin karakter verisi içereceğini belirten ve CDATA ile gösterilen nitelik tipi tanımlaması Niteliğin değerinin belirtilmesinde seçim sunan “seçimli nitelik tipi” Özel ifadelerle tanımlı nitelik tipleri Nitelik varsayımı Element içinde, nitelik kullanımının zorunlu olup olmadığını belirler.Dört çeşit olabilir #REQUIRED #IMPLIED #FIXED Tanımlı Değer

Nitelik Varsayımı #REQUIRED Element içinde belirtilen niteliğin tanımlanmasını zorunlu kılar. Eğer nitelik tanımlanmazsa geçersiz belge hatası oluşur. <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(#PCDATA)> <!ATTLIST tur cinsi CDATA #REQUIRED>

Nitelik Varsayımı #IMPLIED Niteliğin tanımlaması seçime bağlıdır. <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(#PCDATA)> <!ATTLIST tur cinsi CDATA #IMPLIED>

Nitelik Varsayımı Tanımlı Değer Elementin nitelik değerini belirtmemizi sağlar.Element içinde nitelik tanımı yapılıp yapılmaması zorunlu değildir. <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(#PCDATA)> <!ATTLIST tur cinsi CDATA “pansiyon”>

Nitelik Varsayımı #FIXED Kullanımı tanımlı değer gibidir. Farklı olarak tanımlı değerleri sabitler ve farklı değer tanımlamaya izin vermez. <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(#PCDATA)> <!ATTLIST tur cinsi CDATA #FIXED “pansiyon”>

Seçmeli nitelik değerleri tanımlaması Nitelik Tipleri Seçmeli nitelik değerleri tanımlaması <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!DOCTYPE turlar-rehberi [ <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(#PCDATA)> <!ATTLIST tur konaklama (pansiyon | otel) #REQUIRED> <!ATTLIST tur konaklama (pansiyon | otel) #IMPLIED> <!ATTLIST tur konaklama (pansiyon | otel) “otel”> ]>

Özel İfadelerle tanımlı nitelik tipleri ID: Ayni nitelik her elementte farklı değer almalıdır. IDREF: ID referansı tanımlayan bir anahtar kelimedir. Belirtilen ID’nin atnımlayıcısına başvurur.

1 <?xml version = "1.0"?> 2 3 <!-- Fig. 6.8: IDExample.xml --> 4 <!-- Example for ID and IDREF values of attributes --> 5 6 <!DOCTYPE bookstore [ 7 <!ELEMENT bookstore ( shipping+, book+ )> 8 <!ELEMENT shipping ( duration )> 9 <!ATTLIST shipping shipID ID #REQUIRED> 10 <!ELEMENT book ( #PCDATA )> 11 <!ATTLIST book shippedBy IDREF #IMPLIED> 12 <!ELEMENT duration ( #PCDATA )> 13 ]> 14 15 <bookstore> 16 <shipping shipID = "s1"> 17 <duration>2 to 4 days</duration> 18 </shipping> 19

20 <shipping shipID = "s2"> 21 <duration>1 day</duration> 22 </shipping> 23 24 <book shippedBy = "s2"> 25 Java How to Program 3rd edition. 26 </book> 27 28 <book shippedBy = "s2"> 29 C How to Program 3rd edition. 30 </book> 31 32 <book shippedBy = "s1"> 33 C++ How to Program 3rd edition. 34 </book> 35 </bookstore>

DTD’yi Ayrı Bir Dosya Olarak Tanımlamak Avantajları: DTD’yi birden fazla XML belgesi kullanabilir. DTD ‘de yapılacak değişikler onu kullanan tüm XML dosyalarını etkileyecek. Nasıl oluşur? Ayrı bir dosyada düzenlenir. Dtd uzantılı olarak kaydedilir. [] parantezler kullanılmaz.

Dıştadtd_tanimlama.dtd <?xml version ="1.0" encoding ="ISO-8859-9" ?> <!ELEMENT turlar_rehberi (tur)> <!ELEMENT tur(tur-adı,güzergah, başlangıç-tarihi)> <!ELEMENT tur-adı(#PCDATA)> <!ELEMENT güzergah(#PCDATA)> <!ELEMENT başlangıç-tarihi(#PCDATA)> <!ATTLIST tur cinsi CDATA #IMPLIED> Dışdtd_döküman.xml <!DOCTYPE turlar-rehberi SYSTEM “dıştadtd_tanimlama.dtd”> <turlar-rehberi> <tur> <tur-adı> Karadeniz turu</tur-adı> ...... </turlar-rehberi>

Özet DTD, XML belgelerinin şablonu, tipini çıkarmaya yarayan yöntemdir. Bu yönteme uyan belgelere “geçerli”, uymayanlara “geçersiz” belge denir. “Geçerli” belge aynı zamanda “iyi biçimli” belge anlamına da gelir. Ama yukarıdaki ifadenin tersi doğru değildir.