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



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

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

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.

Üst Düzey Programlama

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

Sevdiğiniz editörü açın, Notepad, vi, pico vb. Daha sonra da aşağıdaki kodu yazın:

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

Öğrenci nesnesi için bir etiket


HTML (Hyper Text Markup Language)

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 2

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

Temel Bilgisayar Terimleri Yrd. Doç. Dr. Devkan Kaleci

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 5

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

Html temelleri. Ders 4

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

2. HTML Temel Etiketleri

İNTERNET PROGRAMLAMA II. Tanımlar

1.PROGRAMLAMAYA GİRİŞ

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

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

12 TBT / WEB TASARIM ve PROGRAMLAMA ( Not 3 )

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

Basamaklı Stil Şablonları (CSS) BIM206 Web Programlama

JavaScript & DOM XML & JSON

WEB TASARIM. Öğr.Gör. Ruhsar KAVASOĞLU

Akdeniz Üniversitesi

HAVAYOLU ELEKTRONİK BİLET RAPORU

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

XML Teknolojisine Gerçekçi Yaklaşım

KENT BİLGİ SİSTEMLERİ STANDARTLARININ BELİRLENMESİ ÇALIŞTAYI T.C. ÇEVRE VE ŞEHİRCİLİK BAKANLIĞI COĞRAFİ BİLGİ SİSTEMLERİ GENEL MÜDÜRLÜĞÜ

BMT 202 Web Tasarımı Bahar Dönemi. Yük. Müh. Köksal GÜNDOĞDU 1

Ç 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

Akdeniz Üniversitesi

WEB TASARIMI. Đnternet Nedir?

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 3

HTML. Doç. Dr. İsmail Rakıp Karaş Dersin Course Page: 2. Bölüm

XML. Ahmet Demirelli Sabancı Üniversitesi 2007

Web Programlama Kursu

WEB TASARIMIN TEMELLERİ

Ekran Çıktısı. FONT-WEIGHT: bold; COLOR: #00688F; FONT-FAMILY: Tahoma, Arial, sans-serif; style="text-decoration none" }

WEB TASARIMININ TEMELLERİ

Web Tasarımının Temelleri

WEB TASARIMIN TEMELLERİ

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

Web Site Tasarımı (Html-Css) (SD0139) Murat KARA 2017

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

PTS XML STANDARDI KILAVUZU

Bozok Üniversitesi Mühendislik Fakültesi - Bilgisayar Mühendisliği. Yrd. Doç. Dr. Ahmet Sertol KÖKSAL

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

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

Laboratuar Notları #2

BMT 202 Web Tasarımı Bahar Dönemi. Yük. Müh. Köksal GÜNDOĞDU 1

görüntüleyebilirsiniz. HTML, programlama dilleri bir programlama mantığı taşımadığından öğrenilmesi gayet kolay bir dildir.

HTML & CSS. Öğr.Gör. M.Ersin AKAY

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

5-Hafta Genel Sayfa Yapısı

Atatürk Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BM Web Programlama ÖDEV 1

HTML Bloklar. CSS Display özelliği

.. MESLEKĠ VE TEKNĠK ANADOLU LĠSESĠ EĞĠTĠM - ÖĞRETĠM YILI

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

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

Seo Raporu halikoltukyikama.com

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

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

Rapor Hazırlama Kuralları

Akdeniz Üniversitesi

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

BİTİRME ÇALIŞMASI ARA RAPOR YAZIM KILAVUZU

PASCAL PROGRAMLAMA DİLİ YAPISI

XML ile Mesaj İşlemleri

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

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Web Önyüzü Nasıl Olmalı? <Markup> : İskelet {css} : Görünüm JavaScript() : Etkileşim

Internet: Tarihçe ve Kavramlar

Solaris 7980g. Hızlı Başlangıç Kılavuzu. Sunum Alanı Görüntüleyici TRTR-QS Rev A 1/16

WEB TASARIMINDA TEMEL KAVRAMLAR

BİTİRME ÖDEVİ VE TASARIM PROJESİ ARA RAPOR YAZIM KILAVUZU

Proje #2 - Lojik Devre Benzetimi

ISI Web of Knowledge EndNote Web Copyright 2007 Thomson Corporation

2-Hafta Temel İşlemler

MAKALE BAŞLIĞI (18 pt Bold)

İÇİNDEKİLER BİRİNCİ BÖLÜM BİLGİSAYARDA BELGE AÇMAK VE TEMEL İŞLEMLER YAPMAK

Internet Programming II

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011

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.

Autodesk Inventor 2012 Yenilikler

Yazım Kuralları KADIN VE TOPLUMSAL CİNSİYET ARAŞTIRMALARI DERGİSİ. Sayfa Yapısı. Cilt Payı: Cilt payı: 0 cm (Sol)

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

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Website Yorumu seoniva.com

Karabük Üniversitesi, Mühendislik Fakültesi...


Web Madenciliği (Web Mining)

HTML TABLO OLUŞTURMA HALİL İBRAHİM AKGÜN

BOĞAZİÇİ ELEKTRİK DAĞITIM A.Ş. KURUMSAL GÖRSEL KİMLİK KILAVUZU 2014

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1

duralbend.com Web Sayfasının Seo Analiz Raporu

Transkript:

BTP208 İnternet Programcılığı II XML ve XML Uygulamaları (1. Kısım) Hazırlayan Öğr. Gör. Özgür ÖZŞEN Konular İşaretleme Dilleri ve Tarihçesi HTML in Sınırlamaları XML Söz Dizimi Kuralları 1

İşaretleme Dilleri (Markup Languages) Basılı yayıncılıkta bir metnin belirli kısımlarının nasıl şekilde yayınlanması için kullanılan sembol ve ayıraçlar markup(işaret) olarak adlandırılır. İşaretleme yapılarını (karakter, sembol, etiket) bir çok ortamda görebiliriz. programlama dilleri: {, }, begin, end ASCII kodlama standardı : CR, LF özel karakterler Kelime işlem programları : Yazı tipi, font ve stilleri ayırmak için metin içerisine gömülü işaretler Standard bir karakter, ayıraç, sembol ve etiket kümesi kullanmadan taşınabilir, paylaşılabilir ve işlenebilir bir uygulama geliştirilmesi çok güçtür. Metin ve belgelere özel bir anlam kazandırarak kolay bir şekilde taşınabilmesi, paylaşılabilmesi ve işlenebilmesi için kullanılan işaretler, kurallar ve gramer kümesini markup language (işaretleme dili) olarak adlandırılır. İşaretleme Dilleri Tarihçesi SGML (Standardized Generalized Markup Language) Bir metin veya belge kümesinde kullanılan dilin gramer ve sözlük yapısını tanımlamakta kullanılan bir metadildir. ISO Standardı, 1986 ABD devlet, otomobil ve havacılık kuruluşlarında bir belgeleme standardı olarak kullanılmakta. İçerik ve sunum ayrı Çok güçlü bir dil olmasına rağmen Son derece karmaşık yapı Yüksek uygulama geliştirme maliyeti Bu dilin yaygın bir şekilde kullanımını engellemiştir. 2

İşaretleme Dilleri Tarihçesi HTML (Hypertext Markup Language) Internet ortamında standart bir şekilde belge sunumu amaçlıyla geliştirildi, 1989. HTML bir SGML uygulaması (sözlüğü-vocabulary) olarak geliştirildi. (HMTL dilinin yapısı SGML ile tanımlandı) Yalnızca sunum amaçlı Çok basityapısı ile son derece başarılı oldu. Everythingshouldbe madeas simpleas possible, and no simpler. (Herşeybasit mümkün olduğu kadar basitleştirişmeli, fakat daha basit olmamalı.) -- Albert Einstein İşaretleme Dilleri Tarihçesi XML (extensible Markup Language Genişleyebilir İşaretleme Dili) Güçlü ve esnek bir yapıya sahip olan SGML inbasitbir alt kümesi Elektronik veri değişimi, elektronik ticaret, elektronik yayıncılık, veri bütünleştirilmesi ve yönetimi, akılı arama makinaları gibi bir çok alanda stratejik bir araç olarak kullanılacak metin biçimleme teknolojisi W3C (World Wide Web, http://www.w3.org/xml/) recomendation olarak Şubat 1998 yayınlandı. W3C standardlaştırma çalışmaları aşamalarında farklı seviyelerde standard spesifikasyonlarıyayınlamaktadır. Note: Bir fikir veya açıklamayı içeren en aşağı seviyedeki spesifikasyon Working Draft: Standardlaştırma çalışmalarının devam ettiğini sürede yayınlanan spesifikasyonlar. Recommendation: Working Draft aşaması sonucu elde edilen en son seviye standard specifikasyonu. 3

p (paragraf başı) b (bold) br (line break-satır atlama) P (paragraf sonu) HTML in Sınırlamaları <P> <b> Sn. Özgür ÖZŞEN </b> <br> Anadolu Universitesi <br> Bilgisayar Müh. Bölümü </p> Başlık Ad Soyad Cadde Adı Bina No Đl Posta Kodu Semt HTML dili belgelerin tarayıcılarda biçimlendirilmesi amacıyla tanımlanmış bir standart etiket(tag) kümesi içeren bir dildir. HTML in Sınırlamaları HTML belgeleri metin içeriği hakkında bir anlam ve yapı bilgisi içermez. Metin sunum bilgileri(presentation) ve içeriği(content) ayrık değildir. HTML yalnızca sunum amaçlıdır. HTML etiketlerinin bir çoğu tarayıcının bir metni nasıl biçimlendirmesi ile ilgili bilgi içermektedir. Bu veri değişimi, paylaşımı, veri kopyalama, uygulama bütünleştirmesi gibi dağıtık uygulamaların gereksinimlerine cevap vermemektedir. HTML genişleyebilir bir dil değildir. Bu dili uygulamalarımıza özel yeni etiketler ekleyerek genişletemeyiz. 4

XML de HTML gibi işaretleme etiketleri(tag) kullanır. Uygulamaya bağlı olarak bir çok yeni etiket tanımlayabiliriz. XML in ilk harfi Genişleyebilir (extensible) bunu ifade etmektedir. XML etiketleri bilgi içeriği hakkında bilgi verir. Bilgi hakkında bilgi meta veri veya bilgi(metadata veya metainformation) olarak adlandırılır. Başlangıç etiketi <Ad> Özgür </Ad> <Soyad> ÖZŞEN </Soyad> Bitiş etiketi XML bir meta dildir. Diğer bir deyişle yeni işaretleme dillerini tasarlamak için kullanılan bir dildir. XML ile herhangi bir uygulama için XML belgesinin içinde bulunacak verinin içeriği ve yapısını bir etiket kümesi ile tanımlayarak yeni bir dil oluşturabiliriz. <?xml version="1.0"?> <!DOCTYPE addressbook SYSTEM "AddressBook.dtd" [ <!ENTITY amp "&#38;"> <!ENTITY apos "&#39;"> ]> <addressbook> <!-- This is my good friend Frank. --> <contact> <name>frank Rizzo</name> <address>1212 W 304th Street</address> <city>new York</city> <state>new York</state> <zip>10011</zip> <phone> <voice>212-555-1212</voice> <fax>212-555-1213</fax> </phone> <email>frizzo@fruity.com</email> <web>http://www.fruity.com/rizzo</web> <company>frank&apos;s Ratchet Service</company> </contact> <!-- This is my old college roommate Sol. --> <contact> <name>sol Rosenberg</name> <address>1162 E 412th Street</address> <city>new York</city> <state>new York</state> <zip>10011</zip> <phone> <voice>212-555-1818</voice> <fax>212-555-1819</fax> </phone> <email>srosenberg@fruity.com</email> <web>http://www.fruity.com/rosenberg</web> <company>rosenberg&apos;s Shoes & Glasses</company> </contact> </addressbook> Addressbook XML Belgesi 5

Bir belge tipi tanımlaması, DTD (Document Type Definitions), bir XML belgesinin içinde hangi etiketlergeçebilir, hangi etiketlerhangi etiketleriiçerebilir, etiketlerinsayısı ve sırası, etiketlerin alabileceği özelikler ve değerleri tanımlar. <!ELEMENT addressbook (contact)+> <!ELEMENT contact (name,address+, city, state, zip,phone,email,web, company)> <!ELEMENT name (#PCDATA)> <!ELEMENT address (#PCDATA)> <!ELEMENT city (#PCDATA)> <!ELEMENT state (#PCDATA)> <!ELEMENT zip (#PCDATA)> <!ELEMENT phone (voice, fax?)> <!ELEMENT voice (#PCDATA)> <!ELEMENT fax (#PCDATA)> <!ELEMENT email (#PCDATA)> <!ELEMENT web (#PCDATA)> <!ELEMENT company (#PCDATA)> Addressbook.dtd Veri anlam ve yapısını içeren(self-describing) basit ve esnek veri formatı XML belgeleri kolayca anlaşılabilir. İçerik ve Sunum (CSS, XSL) ayrık. XML etiketleri verilerin nasıl biçimlendirileceği konusunda bir bilgi içermez. Bir çok hazır yazılım bileşenleri ile programlama Hiyerarşik ağaç yapısı 6

addressbook contact contact contact... name address phone Özgür ÖZŞEN... voice fax <addressbook> <contact> <name> Özgür ÖZŞEN</name> <address>... </address>... <phone> <voice> 222 3213550 </voice> <fax> 222 3239501 </fax< </phone>... </contact>... </adsressbook> 222 3213550 222 3239501 Etiketli ağaç yapısı (labeled tree) Yarı Yapısal Veri Modeli (Semistructured Data Model) İlişkisel (relational) Nesne-kökenli (objectoriented) veri yapılarını temsil edebilir. XML in en çok ilgi çeken tarafı e-ticaret, tedarik zinciri yönetimi ve iş akışı (workflow) yönetimi gibi elektronik iş web ve mobil uygulamalarında bir veri değişim formatı olarak kullanılmasıdır. ÜRETİCİ <SİPARİŞ> <FATURA> TOPTANCI <ÇEKME> <ÖDEME> <ÇEKME> <ÜRÜN BİLGİLERİ> BANKA MÜŞTERİ <ÜRÜN> <SİPAR İŞ> <ÖDEME> BANKA 7

XML bir çok standardın birleşiminden oluşmaktadır. XML Syntax(söz dizimi kuralları) XML DTD XML Schema XML Namespaces Xpath Xpointer XSL XSLT XSLF SAX DOM XML Söz Dizimi (Syntax) XML belgeleri işaretleme ifadelerive veri içeriğinden oluşan bir veri dosyasıveya paketidir. İşaretleme ifadeleri elemanlar (elements), varlık referansları(entityrefererences), açıklamalar (comments), işleme komutları(processing instructions), CDATA bölümlerive veri tipi tanımlamalarından (document typedeclaretions) oluşur. <?xml version="1.0"?> <!DOCTYPE e_posta SYSTEM "e-posta.dtd"> <e_posta> <kime>herkese</kime> <kimden> Özgür ÖZŞEN</kimden> <tarih> 7 Eylül 2001</tarih> <konu>xml ve XML Uygulamaları</konu> <mesaj> XML HTML gibi etiket tabanlı bir dildir</mesaj> </e_posta> 8

Elemanlar Başlangıç etiketi, içerik ve bitiş etiketinden oluşan yapı eleman olarak adlandırılır. Elemanlar başka elemanları veya karakter verileri içerebilir. Eleman Eleman ismi <kitap> XML Unleashed </kitap> Başlangıç etiketi (start tag) Karater veri Bitiş etiketi (start tag) Eleman isimleri bir harf veya alt çizgi (_) ile başlayabilir. Eleman isimleri case-sensitive dir. <kitap> <Kitap> Elemanlar Boş Elemanlar (Empty elements) Boş elemanların herhangi bir içeriği yoktur. Boş elemanlar etiketin sonuna bir (/) işareti eklenerek kısa bir biçimde gösterilebilir. <br></br> <br/> Boş elemanlar hariç her XML başlangıç etiketi bir bitiş etiketi ile kapatılmalıdır. Belge Elemanı Hiyerarşik bir ağaç yapısında olan XML belgesinin en üst seviyesindeki eleman belge elemanı veya belge kökü (document root) olarak adlandırılır. Bu elemanın etiketi de kök etiket(root tag) olarak isimlendirilir. 9

kök Etiket Elemanlar Belge Elemanı <?xml version="1.0"?> <!DOCTYPE e_posta SYSTEM "e-posta.dtd"> <e_posta> <kime>herkese</kime> <kimden> Özgür ÖZŞEN</kimden> <tarih> 7 Eylül 2001</tarih> <konu>xml ve XML Uygulamaları</konu> <mesaj> XML HTML gibi etiket tabanlı bir dildir</mesaj> </e_posta> Eleman Yuvalama (Nesting) HTML allows <B> <I> improper nesting <B> <I> XML requires <B> <B> <I> improper nesting <I> Özellikler Özellikler (Attributes) elemanlara eklediğimiz ek bilgilerdir. Başlangıç etiketi içinde özellik ismi ve değer ikilileri olarak geçer. Özellik Özellik <kitap kitap_no = "1234" kitap_sınıfı = "teknik" > <yazar> Didier Martin </yazar> <kitap_adı> Professional XML </kitap_adı> </kitap> 10

Karater Veri Bir elemanın başlangıç ve bitiş etiketi içindeki metin karakter veri olarak adlandırılır. Özel amaçlı olarak kullanılan (&,<,>,",') karakterleri metin içerisinde kullanılamaz. HTML denfarklı olarak eleman içindeki boşluklar (whitespace)korunur. Etiket ve özellik tanımlarındaki boşlukları parser kaldırır. <kitap_adı> Professional XML </kitap_adı> Karater veri Karakter ve Varlık Referansları Karakter referansları onluk ve onaltılık sayı sistemi ile karakterleri göstermek için kullanılır. Onluk : &#NNNN; Onaltılık :&#xnnnn; <copyright> Copyright 2000 SAMS Publishing</copyright> <copyright> Copyright 2000 SAMS Publishing</copyright> Varlık referansları (entity references) verilen bir isim ile DTD te tanımlamış referansları veya(&,<,>,",') XML özel karakterlerini göstermek için kullanılır. Varlık referansı : &isim; <yazar> Didier Martin & Mark Birbeck</yazar> & 11

Karakter ve Varlık Referansları (&,<,>,",') karakterleri için XML standart varlık referansları > > < < & ' & &apos; " " DTD devarlık referansı tanımı <!ENTITY firma "XYZ Bilgisayar A.Ş."> <reklam> &firma;" E-ticaret " hizmetleri sunar. </reklam> XYZ Bilgisayar A.Ş. "E-ticaret" hizmetleri sunar. Açıklamalar ve İşlem Komutları Açıklama (Comments)yapısı HTML ile aynıdır. <!-- Açıklama --> İşlem komutları (Processing instructions) XML belgelerini işleyen uygulamalara bir komut geçilmesi istenildiğinde kullanılır. <?hedef... Komutlar...?> <?xml version= 1.0?> 12

CDATA Bölümleri CDATA bölümleri (CDATA sections) XML de kullanılan işaretleme ifadelerinin göz ardı edilmesi gereken metinleri yazmada kullanılır. XML parsır ı bu bölümde metin içerisinde yer alan işaretleme ayıraçlarını ve etiketlerini normal karakter olarak algılar. <![CDATA[...]]> <![CDATA[ *P = &A; K = "Ali"; C = (i<= 5) ; ]]> Sorular? 13