Yeni Başlayanlar İçin XML Eğitimi

XML nedir?

XML e anlamına gelirXgerilebilir MArkupe Ldil. İşaretlemeyi kullanan ve genişletilebilen bir dildir (bir programlama dili değildir). Şundan türetilmiştir: Standard Generjilendirilmiş MArkupe Ldil(SGML). XML aynı zamanda DTD'leri de kullanır (DMeslek Type DTanımlar) XML belge yapısını tanımlamak için.

XML, hesaplamalı işlemleri ve algoritmaları yönetmek için değildir. Bu nedenle XML bir programlama dili değildir. Ana amaç bilgiyi görüntülemek değil veriyi taşımaktır. XML, insan tarafından okunabilirlik ile makine tarafından okunabilirlik arasındaki boşluğu doldurur. HTML etiketlerinin aksine, XML etiketleri kendi kendini tanımlar.

XML açık bir formattır. XML'in dosya adı uzantısı .xml

XML'in tarihi

XML 1996'da başladı ve ilk olarak 1998'de yayınlandı. World Wide Web Consortium (W3C) geliştiricisidir XMLve bu bir hale geldi W3C önerisi 1998 içinde.

XML'in iki versiyonu vardır.

  1. XML1.0
  2. XML1.1

XML1.1 en son sürümdür. Henüz, XML1.0 en çok kullanılan versiyonudur.

XML editörleri şunlardır:

  • Tim Bray,
  • Jean Paoli,
  • CM Sperberg,
  • Eve Maler,
  • François Yergeau.

XML Özellikleri

XML'in bazı önemli özellikleri şunlardır:

  • Genişletilebilir ve insan tarafından okunabilir.
  • Platform ve dilden bağımsızdır.
  • Beyaz alanı korur.
  • Genel basitlik.
  • Kendini tanımlayan doğa.
  • Verileri HTML'den ayırır.
  • XML etiketleri önceden tanımlanmamıştır. Özelleştirilmiş etiketlerinizi tanımlamanız gerekir.
  • XML veriyi görüntülemek için değil, veriyi taşımak için tasarlandı.
  • XML'in işaretleme kodunu bir insan için anlamak kolaydır.
  • İyi yapılandırılmış formatın programlardan okunması ve yazılması kolaydır.
  • XML, HTML gibi genişletilebilir bir biçimlendirme dilidir.

XML Kodlama

Kodlama, Unicode karakterlerin ikili gösterimlerine dönüştürülmesidir. UTF, XML kodlaması için kullanılır. UTF için standlar UCS (UCS için standlar Uevrensel Ckarakter Sve) Tdönüşüm Fformat.

Temel olarak iki tür UTF kodlaması vardır.

  1. UTF-8 : UTF-8, karakterleri temsil etmek için 8 bit kullanır.
  2. Örnek:

    <?xml version="1.0" encoding="UTF-8"?>
    
  3. UTF-16

Karakterleri temsil etmek için 16 bit kullanır.

Örnek:

<?xml version="1.0" encoding="UTF-16"?>

XML bildiriminin içinde kodlamayı kullanabilirsiniz. UTF-8, XML'deki varsayılan kodlamadır.

XML Sözdizimi

Aşağıdaki kod bölümü temel XML sözdizimini gösterir.

<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
    <child>
        <subchild>.....</subchild>
    </child>
</root>

XML Bildirimi

XML bildirimi, XML sürümünden, karakter kodlamasından ve/veya bağımsız durumdan oluşur. Beyanname isteğe bağlıdır.

XML Bildirimi için Sözdizimi

Aşağıdaki kod bölümü XML bildiriminin sözdizimini gösterir.

<?xml version="version_number," encoding="character_encoding" standalone="yes_or_no" ?> 

XML Bildirim Kuralları

Aşağıda XML bildirim kuralları yer almaktadır.

  • XML bildirimi mevcutsa, görünen ilk şey bu olmalıdır.
  • XML bildirimi büyük/küçük harfe duyarlıdır ve küçük harfle başlamalıdır. <?xml.
  • Kapanış etiketi yoktur.

XML Bildirimi Örneği

Aşağıdaki kod parçası bir XML bildiriminin örneğini göstermektedir.

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

XML Yorumları

Yorumlar isteğe bağlıdır. Yorum eklemek belge içeriğini anlamanıza yardımcı olur.

XML Yorumları için Sözdizimi

Bir yorum şununla başlar: <!– ve ile biter ->.

Aşağıdaki kod parçası XML yorumlarının sözdizimini göstermektedir.

<!-- Add your comment here -->

XML Etiketleri ve Öğeleri

Etiketler, bildirimler dışında çift olarak çalışır. Her etiket çifti bir açılış etiketi (Aynı zamanda etiketi başlat) Ve kapanış etiketi (Aynı zamanda bitiş etiketi).

Etiket adları ekte yer almaktadır <>. Belirli bir etiket çifti için başlangıç ​​ve bitiş etiketleri, bitiş etiketinin farklı olması dışında aynı olmalıdır. / sonra <.

<name>...</name>

Açılış ve kapanış etiketleri arasında kalan her şeye denir. içerik.

Açılış etiketi, içerik ve kapanış etiketinin tamamına bir eleman.

Opening tag + content + closing tag = an element

Not: Öğeler aynı zamanda nitelikler de içerebilir. Özelliklerini çok yakında öğreneceksiniz.

Aşağıdaki unsuru ele alalım.

<age>20</age>

Yukarıdaki öğede,

  • yaş olduğunu elemanın adı.

Not: Etiket adı aynı zamanda bir olarak da anılır eleman or eleman adı.

  • – açılış etiketi
  • 25 - içerik
  • – kapanış etiketi.

Aşağıda gösterildiği gibi etiketlerin arasında içerik yoksa buna şu ad verilir: boş etiketler.

<result></result>

XML Etiketi ve Öğe Kuralları

Aşağıdaki liste XML etiket ve eleman kurallarını göstermektedir.

  • Etiketler büyük/küçük harfe duyarlıdır.

Örnek:

Doğru:

<age>20</age>

Yanlış:

<age>20</Age>

Not: YAŞ, Yaş, ve yaş XML'de üç farklı addır.

  • Tüm XML belgeleri tek bir kök öğe içermelidir.
  • Tüm öğelerin bir kapanış etiketi olması gerekir (bildirimler hariç).
  • Etiket adı bir harfle veya alt çizgiyle başlamalıdır; XML.
  • Bir etiket adı harfler, rakamlar, kısa çizgiler, alt çizgiler ve noktalar içerebilir. Kısa çizgiler alt çizgidir ve izin verilen tek noktalama işaretleri noktalardır.
  • Etiket adı boşluk içeremez.
  • Tüm elemanların düzgün bir şekilde iç içe geçmesi gerekir.

Örnek:

Doğru:

<b><u>This text is bold and italic</u></b>

Yanlış:

<b><u>This text is bold and italic.</b></u>

XML Nitelikleri

Bir öğenin niteliği, başlangıç ​​etiketindeki etiket adından sonra yerleştirilir. Tek bir öğeye farklı özellik adlarıyla birden fazla özellik ekleyebilirsiniz.

Aşağıdaki XML belgesini ele alalım.

<company name="ABC Holdings" location="London">  
    <chairman>Mr. John</chairman>  
    <gm>Mr. Wood</gm>  
</company>  

Bunda iki özellik var şirket eleman, yani isim ve yer.

Hadi çalışalım isim nitelik,

  • name=”ABC Holdingleri” – bir özellik
  • isim – özellik adı
  • ABC Holdings – özellik değeri

not: bir özellik adı olarak da bilinir nitelik.

Ayrıca yukarıdaki örnekte, şirket olduğunu kök eleman.

XML Öznitelik Kuralları

Aşağıdaki listede XML öznitelik kuralları gösterilmektedir.

  • Öznitelik değerleri tırnak içinde olmalıdır.
  • Bir öğe aynı ada sahip birden fazla nitelik içeremez.

Nitelik ve Öğe

Bir nitelik ile bir öğe arasındaki fark konusunda hâlâ kafanız mı karıştı? İşte başka bir örnek.

Aşağıda verilen A ve B belgelerini ele alalım.

Belge A:

<teacher subject="English">
    <name>Mr. John</name>.
    <qualification>Graduate</qualification>
</teacher>

Belge B:

<teacher>
    <subject>English</subject>
    <name>Mr. John</name>
    <qualification>Graduate</qualification>
</teacher>

A belgesinde, konu bir özniteliği.

B belgesinde, konu bir eleman.

XML Varlıkları

XML Varlıkları nedir?

Basit bir ifadeyle varlıklar, özel karakterleri temsil etmenin bir yoludur. Varlıklar aynı zamanda şu şekilde de bilinir: varlık referanslar.

Neden XML Varlıklarına İhtiyacınız Var?

Bazı karakterler (örneğin ", & <, vb.) XML'de ayrılmıştır. Onlar olarak anılırlar özel karakterler doğrudan başka amaçlarla kullanılamaz.

Örneğin, < ve > için kullanılan semboller etiketler. Doğrudan klavyeden yazamazsınız daha kısa ve daha büyük işaretler. Bunun yerine varlıkları kullanmanız gerekir.

Aşağıdaki tabloda bazı popüler XML varlıkları gösterilmektedir.

Karakter Açıklama Varlık adı kullanım
" Tırnak işareti (çift tırnak) quot "
& Ampersand amp &
' Kesme işareti (tek tırnak) sonra '
< Less imzalamaktan lt <
> İşaretten büyük gt >

Örnek:

<friend>
        <name>My friends are Alice &amp; Jane.</name>
</friend>

HTML ve XML

HTML ve XML arasındaki benzerlikler

Aşağıdaki liste HTML ile XML arasındaki benzerlikleri göstermektedir.

  • Her ikisi de açık formatlardır.
  • Her ikisi de işaretleme dilidir.
  • Her ikisi de içeriği tanımlamak için etiketleri ve nitelikleri kullanır.

HTML ve XML arasındaki farklar

XML, HTML'e benzese de XML, HTML'nin yerini almaz. HTML ve XML arasında da bazı önemli farklılıklar vardır.

Aşağıdaki liste tablosu HTML ile XML arasındaki karşılaştırmayı göstermektedir.

HTML XML
Için standlar Köprü Metni Biçimlendirme Dili Genişletilebilir İşaretleme Dili
dil türü Önceden tanımlanmış bir işaretleme dili. İşaretleme dillerini belirtmek için bir çerçeve.
Yapısal detaylar Sağlanmadı. Sağlanan.
Amaç Verileri görüntülemek için kullanılır. Verileri taşımak için kullanılır
Tarafından yönlendirilen Biçim odaklı. İçerik odaklı.
Tabiat Statik bir yapıya sahiptir. Dinamik bir yapıya sahiptir.
Etiket türü Önceden tanımlanmış etiketler. Kullanıcı tanımlı etiketler.
Etiket sınırı Sınırlı sayıda etiket mevcuttur. Etiketler genişletilebilir.
Etiketleri kapatma Kapanış etiketlerinin kullanılması gerekli değildir (ancak kapanış etiketlerinin kullanılması önerilir). Kapanış etiketleri zorunludur.
Ad alanı desteği Desteklenmiyor. Desteklenir.
Büyük küçük harf duyarlılığı Etiketler büyük/küçük harfe duyarlı değildir. Etiketler büyük/küçük harfe duyarlıdır.
Beyaz boşluk Beyaz boşluk korunamaz (beyaz boşluk göz ardı edilebilir). Beyaz boşluk korundu (beyaz boşluk göz ardı edilemez).
Ayrıştırma JavaSenaryo Ekstra bir uygulamaya gerek yoktur. DOM uygulamasına ihtiyaç var.
Kod yerleştirme Mutlaka gerekli değildir. Gerekli.
Hatalar Küçük hataları görmezden gelebilir. Hatalara izin verilmez.
Dosya Adı Uzantısı . Html or . Htm . Xml
Beden Nispeten büyük. Nispeten küçük.
Teklifler Özellik değerleri için tırnak işaretleri gerekli değildir. XML öznitelik değerleri için gereklidir.
Nesne desteği Yerel nesne desteği sunar. Nesnelerin sözleşmelerle ifade edilmesi gerekir.
Boş destek Boş değeri yerel olarak tanır. Öğelerde xsi:nil kullanmanız gerekir.
Kararları biçimlendirme Uygulama verileri için doğrudan eşleme sağlar. Daha önemli bir çaba gerektirir.
Öğrenme eğrisi Less XML ile karşılaştırıldığında dik bir öğrenme eğrisi. Dik öğrenme eğrisi.
Web sitesi https://html.spec.whatwg.org/ https://www.w3.org/TR/xml11/

Temel HTML Söz Dizimi

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
     
</body>
</html>

Temel XML Söz Dizimi

<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
    <child>
        <subchild>.....</subchild>
    </child>
</root>

HTML ve XML ile aynı örnek

HTML'li

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
         <p>Book</p>
    <p>Name: Anna Karenina</p>
    <p>Author: Leo Tolstoy</p>
    <p>Publisher: The Russian Messenger</p>
</body>
</html>

XML'li

<?xml version = "1.0" encoding = "UTF-8" ?>
<book>
        <name>Anna Karenina</name> 
        <author>Leo Tolstoy</author> 
      <publisher>The Russian Messenger</publisher>
</book>

JSON ve XML

JSON ve XML arasındaki benzerlikler

Aşağıdaki liste JSON ve XML arasındaki benzerlikleri göstermektedir.

  • Her ikisi de açık formatlardır.
  • İkisi de kendini anlatıyor.
  • Her ikisinin de hiyerarşik bir yapısı var.
  • Her ikisi de çeşitli programlama dilleri tarafından ayrıştırılabilir ve kullanılabilir.

JSON ve XML arasındaki farklar

XML ile JSON arasında da birçok fark vardır.

Aşağıdaki tablolarda JSON ve XML arasındaki karşılaştırma gösterilmektedir.

JSON XML
Için standlar JavaKomut Dosyası Nesne Gösterimi Genişletilebilir İşaretleme Dili
Genişletilmiş JavaSenaryo SGML
Veri depolama Veriler anahtar/değer çiftleri olarak depolanır. Veriler ağaç yapısı olarak depolanır.
Ad Ad alanları için destek yok. Ad alanlarını destekler.
Yorumlar Yorum eklenmesi desteklenmiyor. Yorum ekleyebilir.
Veri erişilebilirliği JSON nesneleri olarak kolayca erişilebilir. Verilerin ayrıştırılması gerekiyor.
Metadata Meta veri ekleme desteklenmiyor. Meta veri yazabilir.
Türleri JSON türleri: dize, sayı, dizi, Boolean. Tüm XML verileri dizeleri.
Destek veri türleri Destekler metin ve numara yalnızca veri türleri. Birçok veri türünü destekleyin (metin, sayılar, resimler vb.)
Dizinin desteği XML'e kıyasla diziler için daha fazla destek. Diziler için destek yok veya daha az.
Nesnenin desteği Nesne için yerel destek. Nesnenin sözleşmelerle ifade edilmesi gerekir.
AJAX araç seti desteği Desteklenir. Tam olarak desteklenmiyor.
Değerleri alma Kolay. Zor.
Seri durumdan çıkarma/serileştirme Tam otomatik. Geliştiriciler yazmalı JavaKomut dosyası kodu.
Tarayıcı desteği Çoğu tarayıcı tarafından desteklenir. Tarayıcılar arası XML ayrıştırma karmaşık olabilir.
kodlama Yalnızca UTF-8 kodlamasını destekler. Çeşitli kodlamayı destekler.
Görüntüleme yetenekleri Görüntüleme özelliği yok. Görüntüleme yetenekleri sunun.
Belge boyutu XML'den daha küçüktür. JSON'dan daha büyük.
Dosya Adı Uzantısı .json . Xml
Güvenlik Less güvenli. JSON'dan daha güvenli.
Okuması kolay Nispeten kolay. Nispeten zor.
Öğrenme eğrisi Öğrenmesi kolay. Dik öğrenme eğrisi.
Web sitesi https://www.json.org/json-en.html https://www.w3.org/TR/xml11/

Temel JSON Söz Dizimi

{string:value, .......}

JSON ve XML ile aynı örnek

JSON ile

{"books":[
   {"name":"Anna Karenina", "author":"Leo Tolstoy"},
   {"name":"One Hundred Years of Solitude", "author":"Gabriel Garcia Marquez"},
   {"name":"The Great Gatsby", "author":"Scott Fitzgerald"},
   {"name":"Invisible Man", "author":"Ralph Ellison"}
]}

XML'li

<?xml version = "1.0" encoding = "UTF-8" ?>
<books>
    <book>
        <name>Anna Karenina</name> 
        <author>Leo Tolstoy</author> 
    </book>
    <book>
        <name>One Hundred Years of Solitude</name> 
        <author>Gabriel Garcia Marquez</author> 
    </book>
    <book>
        <name>The Great Gatsby</name> 
        <author>Scott Fitzgerald</author> 
    </book>
    <book>
        <name>Invisible Man</name> 
        <author>Ralph Ellison</author>
    </book>
</books>

XML DTD'si

DTD nedir?

DTD'nin anlamı DMeslek Type Dtanım. Bazı yasal unsurları kullanarak bir XML belgesinin yapısını tanımlar. XML DTD isteğe bağlıdır.

DTD Kuralları

Aşağıdaki liste DTD kurallarını göstermektedir.

  • DTD mevcutsa, belgenin başında görünmelidir (DTD'nin üzerinde yalnızca XML bildirimi görünebilir).
  • Öğe bildirimi bir ile başlamalıdır ! işaret.
  • Kök elemanın DTD adı ve eleman tipi aynı olmalıdır.

DTD örnekleri

Dahili DTD örneği:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE student [
<!ELEMENT student (firstname,lastname,school)>  
<!ELEMENT firstname (#PCDATA)>  
<!ELEMENT lastname (#PCDATA)>  
<!ELEMENT school (#PCDATA)> 
]>
<student>  
    <firstname>Mark</firstname>  
    <lastname>Wood</lastname>  
    <school>Hills College</school>  
</student>

Yukarıdaki örnekte,

  • !DOCTYPE öğrencisi DTD bildiriminin başlangıcını gösterir. Ve öğrenci XML belgesinin kök öğesidir.
  • !ELEMENT öğrencisi gösterir öğrenci öğe içermelidir isim soyisim ve okul elemanları.
  • !ELEMENT adı gösterir firstname eleman tipindedir #PCDATA (Pgötlü Ckarakter Veri).
  • !ELEMENT soyadı gösterir soyadı eleman tipindedir #PCDATA.
  • !ELEMENT okulu gösterir okul eleman tipindedir #PCDATA.

Harici bir DTD örneği:

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE student SYSTEM "student.dtd">  
<student>  
    <firstname>Mark</firstname>  
    <lastname>Wood</lastname>  
    <school>Hills College</school>  
</student>  

DTD dosyasının içeriği (student.dtd) aşağıdaki gibidir.

<!ELEMENT student (firstname,lastname,school)>  
<!ELEMENT firstname (#PCDATA)>  
<!ELEMENT lastname (#PCDATA)>  
<!ELEMENT school (#PCDATA)>

XML DOM'u

DOM nedir?

DOM'un açılımı DMeslek ONesne Model. XML belgelerine erişmenin ve bunları düzenlemenin standart bir yolunu tanımlar. DOM'un (hiyerarşik) bir ağaç yapısı vardır.

DOM örneği

Aşağıdaki XML belgesini ele alalım.

<?xml version="1.0" encoding="UTF-8" ?>  
<school>
    <student>  
        <name>
            <first_name>Alex</first_name>  
            <last_name>Clarke</last_name>  
        </name>
        <age>14</age>  
        <address>No. 35, Flower Road, Leeds</address>  
    </student> 
</school>

Yukarıdaki XML dosyasının ağaç yapısı aşağıdaki görüntüye benzeyecektir.

XML DOM'u
XML DOM Örneği

XML Doğrulama

İyi Biçimlendirilmiş XML Belgeleri Nelerdir?

İyi biçimlendirilmiş XML belgeleri, doğru sözdizimine sahip XML belgeleridir.

Geçerli XML Belgeleri Nelerdir?

Geçerli XML belgeleri iyi biçimlendirilmiştir ve DTD kurallarına da uygundur.

XML Ad Alanları

Neden Ad Alanları?

Ad alanları, öğe adı çakışmalarını önlemeye yardımcı olur.

Ad Alanı Bildirimi

Aşağıda ad alanı bildiriminin sözdizimi gösterilmektedir.

<element xmlns:name="URL">

Yukarıdaki beyanda,

  • The xmlns anahtar kelime ad alanının başlangıcını belirtir.
  • The isim ad alanının önekidir.
  • The URL ad alanı tanımlayıcısıdır.

Ad Alanı Örnekleri

Aşağıdaki kod parçası ad alanlarına bir örnek göstermektedir.

<?xml version="1.0" encoding="UTF-8" ?>  
<abt:about xmlns:abt="https://www.guru99.com/about-us.html">  
    <abt:founder>Krishna</abt:founder>  
    <abt:vision>Fun and Free Education for ALL</abt:vision>  
</abt:about>   

XML Düzenleyicileri

Çeşitli XML düzenleyicileri mevcuttur. Herhangi bir metin düzenleyiciyi (not defteri vb.) XML düzenleyici olarak kullanabilirsiniz.

Aşağıdaki listede 2021'deki popüler XML editörlerinden bazıları gösterilmektedir.

1) XML Not Defteri

XML Not Defteri, XML için açık kaynaklı bir düzenleyicidir. Sol bölmede bir ağaç görünümü ve XSL Çıkışı, sağda ise düğüm metni bulunur. Altta bir hata ayıklama penceresi vardır.

Temel İstatistikler:

  • Tür – XML düzenleyici
  • Geliştirici – Microsoft
  • Desteklenen işletim sistemi – Microsoft Windows.
  • Fiyat - Ücretsiz

Bağlantı: http://microsoft.github.io/XmlNotepad/


2) Kalem Stüdyosu

Stylus Studio, dille yazılmış bir IDE'dir. C++ Genişletilebilir İşaretleme Dili (XML) için. Kullanıcının XML belgelerini, elektronik veri değişimi (EDI), CSV ve ilişkisel veriler gibi verileri düzenlemesine ve dönüştürmesine olanak tanır.

Temel İstatistikler:

  • Tür – XML için entegre geliştirme ortamı (IDE)
  • Geliştirici – Progress Software Corporation
  • Desteklenen işletim sistemi – Microsoft Windows.
  • Fiyat – Ücretli (En son fiyat için lütfen aşağıda verilen web sitesine bakın), Ücretsiz deneme mevcuttur.

Bağlantı: http://www.stylusstudio.com/


3) Altova XMLCasus

XMLSpy, öncelikle bir JSON ve XML Editörü olarak pazarlanmaktadır. Dahili bir şema tasarımcısı ve editörü vardır. Visual Studio ve Eclipse entegrasyon.

Temel İstatistikler:

  • Tür – XML Düzenleyici
  • Geliştirici – Altova
  • Desteklenen işletim sistemi – Microsoft Windows.
  • Fiyat – Ücretli (En son fiyat için lütfen aşağıda verilen web sitesine bakın), Ücretsiz deneme mevcuttur.

Bağlantı:https://www.altova.com/xmlspy-xml-editor


4) Oksijen XML Düzenleyicisi

Oxygen XML, geliştirilen bir çapraz platform düzenleyicisidir. JavaDTD, W3C XML Şeması, RELAX NG, Schematron, NRL ve NVDL şemaları gibi şemaların doğrulanmasına yardımcı olur.

Temel İstatistikler:

  • Tür – XML düzenleyici
  • Geliştirici – SyncRO Yumuşak Ltd.
  • Desteklenen işletim sistemi – Windows, Linux ve Mac OS X
  • Fiyat – Ücretli (En son fiyat için lütfen aşağıda verilen web sitesine bakın)

Bağlantı:https://www.oxygenxml.com/


5) Örneklendirin

Xmplify XML Düzenleyici, DTD ve XML Şeması tabanlı otomatik, otomatik belge doğrulama vb. özelliklerle tamamen XML uyumlu bir düzenleme ortamı sağlar.

Temel İstatistikler:

  • Tür – XML Düzenleyici
  • Geliştirici – MOSO Corporation
  • Desteklenen işletim sistemi – Mac OS.
  • Fiyat – Ücretli (En son fiyat için lütfen aşağıda verilen web sitesine bakın)

Bağlantı: http://xmplifyapp.com/

XML Ayrıştırıcılar

XML ayrıştırıcı, XML belgeleriyle çalışmak için bir arayüz sağlayan bir yazılım kitaplığıdır. XML belgesinin formatının doğru olup olmadığını kontrol eder. Bazı ayrıştırıcılar XML belgelerini de doğrulayabilir. Günümüz tarayıcıları XML ayrıştırıcılarıyla birlikte gelir.

saks

saks için standlar Suygu Aiçin PI XML. O bir application pprogram iarayüz (API) XML belgelerini ayrıştırmak için. Olay işleyicilerine benzer şekilde davranırlar. Java.

DOM'dan farklı olarak SAX, olay tabanlı XML ayrıştırıcının bir örneğidir.

İşte SAX ve DOM arasındaki bazı önemli farklar.

saks KARAR
Için standlar XML için basit API Belge Nesnesi Modeli
Ayrıştırıcı türü Etkinliğe dayalı nesne tabanlı
XML okuma ve yazma Salt okunur Hem oku hem yaz
Düğüm ekleme/güncelleme/silme Düğümler eklenemiyor/güncellenemiyor/silinemiyor Düğümleri ekleyebilir/güncelleyebilir/silebilir
Bellek verimliliği İyi bellek verimliliği Değişir
hız DOM Ayrıştırıcısından daha yavaş SAX Ayrıştırıcıdan daha hızlı
Uygun Küçük boyutlu dosyalar Büyük boyutlu dosyalar

XML Veri Bağlama

XML veri bağlama, bir XML belgesindeki verilerin bilgisayarın belleğindeki bir iş nesnesi olarak temsil edilmesidir.

XML veri bağlama için üç yaklaşım vardır.

  • XML şeması tabanlı veri bağlama: İlgili XML sınıfları şemaya göre oluşturulur.
  • Sınıf tabanlı veri bağlama: Sınıflara dayalı olarak karşılık gelen bir XML şeması oluşturulur.
  • Haritalamaya dayalı veri bağlama: Mevcut bir XML şemasının bir dizi sınıfla (ve tam tersi) nasıl eşleştiğini açıklar.

XML veri bağlama çerçeveleri de vardır.

Örnekler:

XML veri bağlama, çerçevelerle kolaydır. Veri bağlama çerçevesi sizin için büyük miktarda kod üretir. Bir DTD veya XML şemasında besleme yapmanız gerekir.

XML Şemaları

XML plan (Ayrıca şöyle bilinir XML şeması tanımı or XSD) XML belge yapısını tanımlamak için kullanın. DTD'ye bir alternatiftir.

Şema Neden Önemlidir?

DTD yeterince genişletilebilir ve esnek olmadığından şema kadar güçlü değildir. Dolayısıyla bazı durumlar için uygun olmayabilir. Böyle bir durumda şema önemlidir. XML şeması kullanmanın temel amacı, bir XML belgesinin öğelerini ve niteliklerini tanımlamaktır.

XML Şemasının DTD'den Farkı Ne Kadardır?

Aşağıdaki karşılaştırma XSD'nin (XML Şeması) DTD'den nasıl farklı olduğunu göstermektedir.

DTD XSD
Için standlar Belge Türü Tanımı XML Şeması Tanımı
uzayabilirlik Genişletilemez Genişletilebilir
XML yapısında kontrol Less kontrol Daha fazla kontrol
Destek veri türleri Desteklenmez destekli
Ad Alanı Desteği Desteklenmez destekli

Aşağıdaki kod parçası XML şemasının bir örneğini göstermektedir.

xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
    <xs:element name = "employee">
        <xs:complexType>
            <xs:sequence>
                <xs:element name = "firstname" type = "xs:string" />
                <xs:element name = "lastname" type = "xs:string" />
                <xs:element name = "phone" type = "xs:int" />
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

XML'in avantajları

Burada, XML'in artıları/yararları:

  • Verilerin taşınmasını ve paylaşılmasını kolaylaştırdı.
  • XML, çeşitli platformlar arasında veri alışverişini geliştirir.
  • Bir metin belgesine yerleştirilen bir dizi karakter ve/veya sembolden oluşan bir işaretleme dilidir.
  • XML, XML belgesinin görüntülendikten sonra nasıl görünmesi gerektiğini belirtir.
  • Platform değiştirme sürecini basitleştirir.
  • Veri kullanılabilirliğini artırır.
  • Çok dilli belgeleri ve Unicode'u destekler.
  • Öğrenmesi ve kodlaması nispeten kolay.
  • Bir metin belgesine yerleştirilen bir dizi karakter ve/veya sembolden oluşan bir işaretleme dilidir.
  • Doğrulamayı DTD ve Schema kullanarak gerçekleştirir.
  • Belgelerin sistemler ve uygulamalar arasında taşınabilir olmasını sağlar. XML'in yardımıyla farklı platformlar arasında hızlı bir şekilde veri alışverişi yapabilirsiniz.
  • XML, verileri HTML'den ayırır.

XML'in dezavantajları

XML kullanmanın eksileri/dezavantajları şunlardır:

  • XML bir işleme uygulaması gerektirir.
  • XML sözdizimi, bazen kafa karıştırıcı olabilen diğer alternatif 'metin tabanlı' veri iletim biçimlerine benzemektedir.
  • İçsel veri türü desteği yok
  • XML sözdizimi gereksizdir.
  • Kullanıcının kendi etiketlerini oluşturmasına izin vermez.

ÖZET

  • XML, Genişletilebilir İşaretleme Dili anlamına gelir. XML, işaretlemeyi kullanan ve genişletilebilen bir dildir (programlama dili değildir).
  • Ana amaç veriyi görüntülemek değil, veriyi aktarmaktır.
  • XML 1.1 en son sürümdür. Ancak XML 1.0 en çok kullanılan versiyondur.
  • Etiketler, bildirimler dışında çift olarak çalışır.
  • Açılış etiketi + içerik + kapanış etiketi = bir öğe
  • Varlıklar özel karakterleri temsil etmenin bir yoludur.
  • DTD, Belge Türü Tanımı anlamına gelir. Bazı yasal unsurları kullanarak bir XML belgesinin yapısını tanımlar. XML DTD isteğe bağlıdır.
  • DOM, Belge Nesne Modeli anlamına gelir. XML belgelerine erişmenin ve bunları değiştirmenin standart yöntemini tanımlar.
  • İyi biçimlendirilmiş XML belgeleri, doğru sözdizimine sahip XML belgeleridir.
  • Geçerli XML belgeleri iyi biçimlendirilmiştir ve ayrıca DTD kurallarına uygundur.
  • Ad alanları, öğe adı çakışmalarını önlemeye yardımcı olur.