Xml temel kursu. Yeni Başlayanlar İçin XML Temelleri. XML'de yaygın olarak ayrılmış karakterler

  • 05.03.2020

XML bugünlerde çok popüler ve esnek bir format. Her programcı bunu anlamalı, sadece sahip olması gereken bir şey. Bugün birçok teknoloji bağlı, aktif olarak kullanıyorlar, üstelik modern olanlar da aralarında.

Giriş

Merhaba makalemin sevgili okuyucuları. Hemen söylemek istiyorum ki bu, üç yazıdan oluşan serimin sadece ilk makalesi. Tüm döngünün temel amacı, her okuyucuyu XML'e ayırmak ve tam bir açıklama ve anlayış olmasa da, en azından ana noktaları ve şeyleri açıklayarak ona iyi bir itme sağlamaktır. Tüm döngü tek bir adaylık için olacaktır - "Ayrıntılara dikkat"yazılarda yer alan karakter sınırına uymak ve büyük miktarda malzemeyi daha iyi anlamak için daha küçük parçalara bölmek için 3 maddeye bölünme yapılmıştır. İlk makale XML'in kendisine ve ne olduğuna ve ayrıca XML dosyaları için bir şema oluşturmanın yollarından biri olan DTD'ye ayrılacaktır. Öncelikle, XML'e henüz aşina olmayanlar için kısa bir giriş yapmak istiyorum: gözünü korkutmaya gerek yok. XML çok karmaşık değildir ve herhangi bir programcı tarafından anlaşılması gerekir, çünkü sadece istediğiniz çeşitli bilgileri depolamak için günümüzde çok esnek, verimli ve popüler bir dosya formatıdır. XML; Ant, Maven, Spring'de kullanılmaktadır. Her programcının XML bilgisine ihtiyacı vardır. Artık güç ve motivasyon topladığınıza göre, çalışmaya başlayalım. Tüm malzemeleri olabildiğince basit bir şekilde düzenlemeye çalışacağım, sadece en önemlilerini toplayıp ormana girmeyeceğim.

XML

Daha net bir açıklama için XML'i bir örnekle görselleştirmek daha doğru olacaktır.< ? xml version= "1.0" encoding= "UTF-8" ? > < company> < name> IT- Cennet< / name> < offices> < office floor= "1" room= "1" > < employees> < employee> < name> Maksim< / name> < job> Orta Yazılım Geliştirici< / job> < / employee> < employee> < name> Ivan< / name> < job> Junior Yazılım Geliştirici< / job> < / employee> < employee> < name> Franklin< / name> < job> Junior Yazılım Geliştirici< / job> < / employee> < / employees> < / office> < office floor= "1" room= "2" > < employees> < employee> < name> Haberci< / name> < job> Orta Yazılım Geliştirici< / job> < / employee> < employee> < name> Adam< / name> < job> Orta Yazılım Geliştirici< / job> < / employee> < employee> < name> Leroy< / name> < job> Junior Yazılım Geliştirici< / job> < / employee> < / employees> < / office> < / offices> < / company> HTML ve XML, ortak bir üst öğe olan SGML'ye sahip oldukları için sözdizimi açısından benzerdir. Bununla birlikte, HTML'de yalnızca belirli bir standardın sabit etiketleri vardır, XML'de ise kendi etiketlerinizi, niteliklerinizi oluşturabilir ve genel olarak verileri size uygun bir şekilde depolamak istediğinizi yapabilirsiniz. Temel olarak XML dosyaları İngilizce bilen herkes tarafından okunabilir. Bu örnek bir ağaç kullanılarak tasvir edilebilir. Ağaç kökü - Şirket. Aynı zamanda diğer tüm öğelerin geldiği kök (kök) öğedir. Her XML dosyasının yalnızca bir kök öğesi olabilir. Sonra ilan edilmelidir xml dosya bildirimi (örnekteki ilk satır) ve diğer tüm öğeleri içerir. Beyanname hakkında biraz: o zorunlu ve belgeyi XML olarak tanımlamak için gereklidir. Üç sözde özniteliği vardır (özel önceden tanımlanmış öznitelikler): sürüm (1.0 standardına göre), kodlama (kodlama) ve bağımsız (özerklik: evet ise ve harici şemalar belgeye bağlıysa, varsayılan olarak bir hata olacaktır. - Hayır). Elementler Diğer öğeleri ve öznitelikleri kullanarak verileri depolayan varlıklardır. Öznitellikler - bu, öğe eklerken belirtilen öğe hakkında ek bilgidir. Açıklamayı bir OOP alanına çevirirsek, bir örnek verebiliriz: bir arabamız var, her arabanın özellikleri (renk, kapasite, marka vb.) - bunlar niteliklerdir ve arabanın içinde varlıklar vardır. : kapılar, pencereler, motor, direksiyon simidi diğer unsurlardır. İsteğinize bağlı olarak özellikleri hem ayrı öğeler hem de öznitelikler olarak depolayabilirsiniz. Sonuçta XML, bir şey hakkında bilgi depolamak için son derece esnek bir formattır. Açıklamalardan sonra her şeyin yerine oturması için yukarıdaki örneği sökmemiz yeterlidir. Örnekte, basit bir şirket yapısını tanımladık: adı ve ofisleri olan bir şirket var ve ofislerde çalışanlar var. Çalışanlar ve Ofisler öğeleri sarmalayıcı öğelerdir - aynı türden öğeleri toplamaya hizmet ederler, aslında bunları işlem kolaylığı için tek bir sette birleştirirler. Zemin ve oda özel ilgiyi hak ediyor. Bunlar ofisin nitelikleridir (kat ve sayı), yani özellikleridir. Bir "resim" unsurumuz olsaydı, boyutlarını transfer etmek mümkün olurdu. Şirketin bir ad özniteliğine sahip olmadığını, ancak bir ad öğesine sahip olduğunu fark edebilirsiniz. Yapıları istediğiniz gibi tanımlayabilirsiniz. Hiç kimse sizi elemanların tüm özelliklerini sadece özniteliklere yazmaya zorlamaz, sadece elemanları kullanabilir ve içlerine bazı veriler yazabilirsiniz. Örneğin, çalışanlarımızın adını ve unvanını öznitelik olarak kaydedebiliriz:< ? xml version= "1.0" encoding= "UTF-8" ? > < company> < name> IT- Cennet< / name> < offices> < office floor= "1" room= "1" > < employees> < employee name= "Maksim" job= "Middle Software Developer" > < / employee> < employee name= "Ivan" job= "Junior Software Developer" > < / employee> < employee name= "Franklin" job= "Junior Software Developer" > < / employee> < / employees> < / office> < office floor= "1" room= "2" > < employees> < employee name= "Herald" job= "Middle Software Developer" > < / employee> < employee name= "Adam" job= "Middle Software Developer" > < / employee> < employee name= "Leroy" job= "Junior Software Developer" > < / employee> < / employees> < / office> < / offices> < / company> Gördüğünüz gibi, şimdi her çalışanın adı ve unvanı onun nitelikleridir. Ve varlığın (etiket) çalışanın içinde hiçbir şey olmadığını görebilirsiniz, çalışanın tüm unsurları boştur. Ardından çalışanı boş bir öğe haline getirebilirsiniz - öznitelikleri bildirdikten hemen sonra kapatın. Bu oldukça basit bir şekilde yapılır, sadece eğik çizgi koyun:< ? xml version= "1.0" encoding= "UTF-8" ? > < company> < name> IT- Cennet< / name> < offices> < office floor= "1" room= "1" > < employees> < employee name= "Maksim" job= "Middle Software Developer" / > < employee name= "Ivan" job= "Junior Software Developer" / > < employee name= "Franklin" job= "Junior Software Developer" / > < / employees> < / office> < office floor= "1" room= "2" > < employees> < employee name= "Herald" job= "Middle Software Developer" / > < employee name= "Adam" job= "Middle Software Developer" / > < employee name= "Leroy" job= "Junior Software Developer" / > < / employees> < / office> < / offices> < / company> Gördüğünüz gibi, boş unsurları kapatarak, bilginin tüm bütünlüğünü koruduk ve kaydı büyük ölçüde azalttık, bilgileri daha kısa ve okunaklı hale getirdik. Eklemek yorum Yap (dosya ayrıştırılırken atlanacak metin) XML'de aşağıdaki sözdizimi vardır:< ! -- Иван недавно уволился, только неделю отработать должен. Не забудьте потом удалить его из списка. -- > Ve son yapı CDATA , "karakter verisi" anlamına gelir. Bu tasarım sayesinde XML işaretlemesi olarak yorumlanmayacak metinler yazabilirsiniz. Bu, XML biçimlendirmesini bilgilerde depolayan bir XML dosyasında bir varlığınız varsa kullanışlıdır. Misal:< ? xml version= "1.0" encoding= "UTF-8" ? > < bean> < information> < ! [ CDATA[ < name> Ivan< / name> < age> 26 < / age> ] ] > < / information> < / bean> XML'in özelliği, onu istediğiniz gibi genişletebilmenizdir: öğelerinizi, niteliklerinizi kullanın ve istediğiniz gibi yapılandırın. Verileri depolamak için hem nitelikleri hem de öğeleri kullanabilirsiniz (önceki örnekte gösterildiği gibi). Bununla birlikte, kendi öğelerinizi ve niteliklerinizi anında ve nasıl istediğinizi bulabileceğinizi anlamanız gerekir, ancak ya başka bir programcının ad öğesini niteliklere ve tüm programınıza aktarmak istediği bir proje üzerinde çalışıyorsanız ne olur? mantık öyle yazılır ki isim bir eleman oldu? XML dosyalarını doğrulayabilmeniz ve projenizde kuralların standart hale geleceğinden ve hiç kimsenin onları kıramayacağından emin olabilmeniz için hangi öğelerin olması gerektiği, sahip oldukları öznitelikler ve diğer şeyler için kendi kurallarınızı nasıl oluşturursunuz? Kendi XML biçimlendirmeniz için tüm kuralları yazmak için özel araçlar vardır. En ünlüleri DTD ve XML Şemasıdır. Bu makale sadece ilkine odaklanacak.

DTD

DTD, belge türlerini tanımlamak için tasarlanmıştır. DTD zaten kullanılmıyor ve XML'de aktif olarak kullanımdan kaldırılıyor, ancak yine de DTD'yi kullanan birçok XML dosyası var ve genel olarak onu anlamak faydalıdır. DTD, XML belgelerini doğrulamak için kullanılan bir teknolojidir... DTD, belge türü için belirli kurallar bildirir: öğeleri, öğenin içinde hangi öğelerin olabileceği, öznitelikler, gerekli olup olmadıkları, tekrarlarının sayısı ve varlık (Varlık). XML'e benzer şekilde, DTD, daha net bir açıklama için bir örnekle görselleştirilebilir.< ! -- Объявление возможных элементов -- > < ! ELEMENT employee EMPTY> < ! ELEMENT employees (employee+ ) > < ! ELEMENT office (employees) > < ! ELEMENT offices (office+ ) > < ! ELEMENT name (#PCDATA) > < ! ELEMENT company (name, offices) > < ! -- Добавление атрибутов для элементов employee и office -- > < ! ATTLIST employee name CDATA #REQUIRED job CDATA #REQUIRED > < ! ATTLIST office floor CDATA #REQUIRED room CDATA #REQUIRED > < ! -- Добавление сущностей -- > < ! ENTITY M "Maksim" > < ! ENTITY I "Ivan" > < ! ENTITY F "Franklin" > Çok basit bir örneğimiz var. Bu örnekte, tüm hiyerarşimizi XML örneğinden açıkladık: çalışan, çalışanlar, ofis, ofisler, isim, şirket. DTD dosyaları oluşturmak için, herhangi bir XML dosyasını tanımlamak için 3 temel yapı kullanılır: ELEMENT (öğeleri açıklamak için), ATTLIST (öğeler için öznitelikleri açıklamak için) ve ENTITY (metni kısaltılmış formlarla değiştirmek için). ELEMENT Öğeyi açıklamaya yarar. Açıklanan eleman içerisinde kullanılabilecek elemanlar parantez içinde liste halinde listelenmiştir. Miktarı belirtmek için nicelik belirteçlerini kullanabilirsiniz (normal ifade niceleyicileriyle aynıdır): + 1+ anlamına gelir *, 0+ anlamına gelir? 0 OR 1 anlamına gelir Nicelik belirteçleri eklenmemişse, yalnızca 1 öğenin olması gerektiği düşünülür. Bir grup unsurdan birine ihtiyacımız olsaydı, şöyle yazabilirdik:< ! ELEMENT company ((name | offices) ) > Daha sonra unsurlardan biri seçilecekti: isim veya ofisler, ancak şirket içinde aynı anda iki tane olsaydı, o zaman doğrulama gerçekleşmezdi. Ayrıca çalışanın BOŞ kelimesine sahip olduğunu fark edebilirsiniz, bu da öğenin boş olması gerektiği anlamına gelir. Ayrıca HERHANGİ - herhangi bir öğe vardır. #PCDATA - metin verileri. ATTLIST Elemanlara nitelikler eklemeye yarar. ATTLIST'den sonra gerekli öğenin adı gelir ve "öznitelik adı - öznitelik türü" biçimindeki sözlüğün ardından, son olarak # IMPLIED (isteğe bağlı) veya # GEREKLİ (gerekli) ekleyebilirsiniz. CDATA - metin verileri. Başka türler de var ama hepsi küçük harf. ENTITY ENTITY kısaltmaları ve bunların üzerine ikame edilecek metni belirtmek için kullanılır. Aslında, tam metin yerine sadece XML'de kullanabiliriz, sadece & işaretinin önünde ve; sonra. Örneğin: HTML biçimlendirmesi ile sadece karakterleri ayırt etmek için, sol açılı ayraç genellikle lt; , sadece & lt'den önce koymanız gerekir. O zaman işaretlemeyi kullanmayacağız, sadece sembolü< . Как вы можете видеть, все довольно просто: объявляете элементы, объясняете, какие элементы объявленные элементы способны содержать, добавление атрибутов этим элементам и, по желанию, можете добавить сущности, чтобы сокращать какие-то записи. И тут вы должны были бы спросить: а как использовать наши правила в нашем XML файле? Ведь мы просто объявили правила, но мы не использовали их в XML. Bunları XML'de kullanmanın iki yolu vardır: 1. Enjeksiyon - XML \u200b\u200bdosyasının içine DTD kuralları yazarken, sadece kök öğeyi DOCTYPE anahtar sözcüğünden sonra yazmanız ve DTD dosyamızı köşeli parantez içine almanız yeterlidir. < ? xml version= "1.0" encoding= "UTF-8" ? > < ! DOCTYPE company [ < ! -- Объявление возможных элементов -- > < ! ELEMENT employee EMPTY> < ! ELEMENT employees (employee+ ) > < ! ELEMENT office (employees) > < ! ELEMENT offices (office+ ) > < ! ELEMENT name (#PCDATA) > < ! ELEMENT company (name, offices) > < ! -- Добавление атрибутов для элементов employee и office -- > < ! ATTLIST employee name CDATA #REQUIRED job CDATA #REQUIRED > < ! ATTLIST office floor CDATA #REQUIRED room CDATA #REQUIRED > < ! -- Добавление сущностей -- > < ! ENTITY M "Maksim" > < ! ENTITY I "Ivan" > < ! ENTITY F "Franklin" > ] > < company> < name> IT- Cennet< / name> < ! -- Иван недавно уволился, только неделю отработать должен. Не забудьте потом удалить его из списка. -- > < offices> < office floor= "1" room= "1" > < employees> < employee name= "&M;" job= "Middle Software Developer" / > < employee name= "&I;" job= "Junior Software Developer" / > < employee name= "&F;" job= "Junior Software Developer" / > < / employees> < / office> < office floor= "1" room= "2" > < employees> < employee name= "Herald" job= "Middle Software Developer" / > < employee name= "Adam" job= "Middle Software Developer" / > < employee name= "Leroy" job= "Junior Software Developer" / > < / employees> < / office> < / offices> < / company> 2. İçe aktar - tüm kurallarımızı ayrı bir DTD dosyasına yazıyoruz, ardından XML dosyasındaki ilk yöntemden DOCTYPE yapısını kullanıyoruz, sadece köşeli parantezler yerine SYSTEM yazmanız ve mutlak veya göreceli yolu belirtmeniz gerekir. mevcut dosya konumuna. < ? xml version= "1.0" encoding= "UTF-8" ? > < ! DOCTYPE company SYSTEM "dtd_example1.dtd" > < company> < name> IT- Cennet< / name> < ! -- Иван недавно уволился, только неделю отработать должен. Не забудьте потом удалить его из списка. -- > < offices> < office floor= "1" room= "1" > < employees> < employee name= "&M;" job= "Middle Software Developer" / > < employee name= "&I;" job= "Junior Software Developer" / > < employee name= "&F;" job= "Junior Software Developer" / > < / employees> < / office> < office floor= "1" room= "2" > < employees> < employee name= "Herald" job= "Middle Software Developer" / > < employee name= "Adam" job= "Middle Software Developer" / > < employee name= "Leroy" job= "Junior Software Developer" / > < / employees> < / office> < / offices> < / company> SYSTEM yerine PUBLIC anahtar sözcüğünü de kullanabilirsiniz, ancak bu sizin için yararlı olmayacaktır. Eğer ilgileniyorsanız, bu konuda (ve SİSTEM hakkında da) ayrıntılı olarak buradan okuyabilirsiniz: bağlantı. Artık diğer öğeleri DTD'de bildirmeden kullanamayız ve tüm XML bizim kurallarımıza uyar. Bu kodu IntelliJ IDEA'da .xml uzantılı ayrı bir dosyaya yazmayı deneyebilir ve bazı yeni öğeler eklemeyi deneyebilir veya DTD'mizden bir öğeyi kaldırmayı deneyebilirsiniz ve IDE'nin size nasıl bir hata göstereceğini göreceksiniz. Bununla birlikte, DTD'nin dezavantajları vardır:
  • Xml sözdiziminden farklı kendi sözdizimi vardır.
  • DTD'de veri türü denetimi yoktur ve yalnızca dizeleri içerebilir.
  • DTD'de ad alanı yoktur.
Yerel sözdizimi sorununda: İki sözdizimini aynı anda anlamanız gerekir: XML ve DTD sözdizimi. Farklılar ve bu kafanızı karıştırabilir. Ayrıca, bu nedenle, büyük XML dosyalarındaki hataları aynı DTD şemalarıyla bağlantılı olarak izlemek daha zordur. Bir şey sizin için işe yaramazsa, farklı sözdizimlerinde büyük miktarda metni kontrol etmeniz gerekir. Aynı anda iki kitap okumak gibi: Rusça ve İngilizce. Ve eğer bir dil bilginiz kötüyse, metni anlamak daha zor olacaktır. Veri türü denetimi konusunda: Bir DTD'deki özniteliklerin farklı türleri vardır, ancak bunların hepsi aslında bir şeyin, listelerin veya bağlantıların dize temsilleridir. Bununla birlikte, olumlu ya da olumsuz bir yana, yalnızca sayıları talep edemezsiniz. Ve nesne türlerini tamamen unutabilirsiniz. Son sorun, burada tartışmanın bir anlamı olmadığı için ad alanlarına ve XML şemalarına ayrılacak olan sonraki makalede tartışılacaktır. İlginiz için hepinize teşekkür ederim, harika bir iş çıkardım ve yazı dizisinin tamamını zamanında bitirmek için yapmaya devam ediyorum. Temel olarak, 2. makaleyi bitirmek için XML şemalarını anlamam ve bunların daha net bir açıklamasını bulmam bana kalıyor. Yarısı zaten yapıldı, yani yakında bekleyebilirsiniz. Son makale tamamen Java kullanarak XML dosyalarıyla çalışmaya ayrılacaktır. Herkese iyi şanslar ve programlamada başarı :) Sonraki makale:

Lucinda Dykes, Ed Tittel

XML, web sayfaları oluşturan bir biçimlendirme dilidir. XML kullanmaya başlamadan önce, geçerli bir belge ile iyi biçimlendirilmiş bir belge arasındaki farkı, bir XML belgesi oluşturmak için Belge Türü Tanımı (DTD) öğelerinin ve temel şema bildirimlerinin nasıl oluşturulacağını öğrenin. Ayrıca, düzenli olarak kullanılan ayrılmış karakterleri ve hangi web tarayıcılarının XML ve stil sayfalarını en iyi şekilde desteklediğini anlamak isteyeceksiniz.

İyi biçimlendirilmiş XML belgesine karşı geçerli

XML'de, geçerli bir belge, bir belgede hangi öğelerin görünebileceğini ve öğelerin birbirine nasıl sığabileceğini tanımlayan DTD (Belge Türü Tanımı) veya şemasındaki kurallara uymalıdır. Belge kötü biçimlendirilmişse, XML dünyasında çok ileri gitmez, bu nedenle bir XML belgesi oluştururken çok basit bazı kurallara göre hareket etmeniz gerekir. Bir iyi biçimlendirilmiş belge aşağıdaki bileşenlere sahip olmalıdır:

    Tüm başlangıç \u200b\u200bve bitiş etiketleri aynıdır. Başka bir deyişle, açılış ve kapanış bölümleri her zaman aynı durumda aynı adı içermelidir: ... veya ..., ama ....

    Boş öğeler, özel XML sözdizimini izler. .

    Tüm öznitelik değerleri tek veya çift tırnak içinde gösterilir: id \u003d "değer"\u003e veya .

Belge Türü Tanımı veya DTD Oluşturma Kuralları, Öğeler

Temel olarak, yapı ve mantık eklemek için bir Belge Türü Tanımı (DTD) hazırlar ve kullanırsınız, bu da gerekli tüm işlevselliğin XML belgenizde doğru sırada bulunduğundan emin olmanızı kolaylaştırır. DTD'de, öğelerin bir XML belgesinde nasıl kullanılabileceğini kontrol eden birçok kural geliştirebilirsiniz.

Sembol Değer Misal
#PCDATA Ayrıştırılmış karakter verilerini veya metni içerir
#PCDATA öğe-adı Metin ve diğer öğeleri içerir; #PCDATA bir kuralda her zaman ilk sırada görünür çocuk) *\u003e
, (virgül) Bu sırayla kullanılmalıdır çocuk3)\u003e
| (boru paneli) Sağlanan seçeneklerden yalnızca birini kullanın çocuk3)\u003e
öğe-adı (tek başına) Sadece bir isim kullanın
element adı? çocuk3?)\u003e
öğe-adı + Bir veya daha fazla kez kullanın çocuk3)\u003e
öğe adı * Bir kez veya birçok kez kullanın veya hiç kullanmayın çocuk3)\u003e
() Grupları gösterir; yuvalanabilir veya
çocuk4)\u003e

Temel XML Şeması Bildirimleri

Bir XML Şeması belgesi, çok ayrıntılı bilgi sağlayan ve XML belgesinde yer alan bilgilerin doğru biçimde olmasını sağlayan bir dizi bildirimden oluşturulur.

İlan Randevu Sözdizimi
Şema Şemanın kullandığı dili belirtir xmlns: xsd \u003d "// www. w3. org / 2001 / XMLSchema"\u003e
Eleman Bir elemanı tanımlar
Öznitelik Bir öznitelik tanımlar tür \u003d "tür"\u003e
Karmaşık tip Diğer öğeleri içeren, nitelikleri içeren bir öğeyi tanımlar
veya karışık içerik (öğeler ve metin) içeriyor
Basit tip Bir öğe veya öznitelik için kısıtlanmış bir veri türü oluşturur
değer
Sıralı bağlayıcı Özniteliklerin veya öğelerin karmaşık bir türde olduğunu gösterir
sırayla listelenmelidir
Besteci Karmaşık bir türdeki herhangi bir öznitelik veya öğenin kullanılabileceğini gösterir
Tüm besteci Karmaşık bir türdeki özelliklerin veya öğelerin herhangi birinin veya tümünün kullanılabileceğini gösterir
açıklama Aşağıdakileri sağlayan dokümantasyon ve / veya appInfo öğelerini içerir
şematik belge hakkında ek bilgi ve yorumlar
Dokümantasyon Ek açıklamalarda okunabilir bilgiler sağlar
Başvuru bilgisi İçinde bilgisayar tarafından okunabilir bilgiler sağlar
açıklama

XML'de yaygın olarak ayrılmış karakterler

Bazı nesneler XML'de dahili kullanım için ayrılmıştır ve içeriğinizdeki sembolik bağlantılarla değiştirilmelidir. Yaygın olarak kullanılan bu beş dahili nesne zaten XML'in bir parçası olarak tanımlanmıştır ve kullanıma hazırdır:

CSS1?

XSLT 1.0? Evet Evet Değil Değil
Internet Explorer 6.0 Evet Evet Evet Evet
Mozilla 1.5 Evet Evet Evet Evet
Mozilla Firefox 1.0 Evet Evet Evet Evet
Netscape Navigator 7 Evet Evet Evet Evet
Opera 7 Evet Evet Evet Değil

XML, verinin ne olduğu göz önünde bulundurularak verileri açıklamak için oluşturulmuştur.

HTML, görüntülenen verilerin nasıl göründüğüne dikkat ederek verileri görüntülemek için oluşturulmuştur.

XML nedir?

  • XML şu anlama gelir: Genişletilebilir İşaretleme Dili
  • XML biçimlendirme diliHTML'ye benzer
  • XML oluşturuldu veri açıklamaları
  • XML etiketleri önceden tanımlanmamıştır. Yapabilirsin etiketlerinizi kullanın
  • XML kullanır Belge Türü Tanımı (DTD) veya xML Şeması veri açıklaması için
  • XML w3C tarafından tavsiye edilir

XML ve HTML arasındaki temel fark

XML, verileri aktarmak için tasarlanmıştır.

XML, HTML'nin yerini almaz.

XML ve HTML farklı amaçlar için geliştirilmiştir:

  • XML, verileri açıklamak ve hangi verilerin iletildiğine odaklanmak için oluşturuldu
  • HTML, verileri görüntülemeye odaklanarak verileri görüntülemek için tasarlanmıştır
  • Bu nedenle, HTML daha çok bilgi görüntüleme ile ilgili iken, XML daha çok bilgiyi açıklama ile ilgilidir.

XML hiçbir şey yapmaz

XML, herhangi bir işlem yapmak için oluşturulmadı.

Anlaması zor olabilir, ancak XML hiçbir şey yapmaz. Bu biçimlendirme dili, bilgilerin yapılandırılması, depolanması ve iletilmesi için oluşturulmuştur. Aşağıdaki örnek, Anton Ira'dan XML olarak sunulan bir nottur:

Ira

Anton

Hatırlatma

Bu hafta buluşmayı unutma!

Gördüğünüz gibi XML çok kısa ve öz.

Not ( ) bir başlıktan ( ) ve içerik ( ) harfler. Göndereni içerir (etiket - "mektup kimden") ve alıcı (etiket - "kime"). Ama bu mektup hiçbir şey yapmıyor. Bu, etiketlere sarılmış saf bilgidir. Bu bilgileri göndermek, almak ve görüntülemek için birinin bir program yazması gerekir.

XML - Ücretsiz Genişletilebilir İşaretleme Dili

XML etiketleri önceden tanımlanmamıştır. Etiketlerinizi girebilirsiniz.

HTML'deki etiketler ve belge yapısı önceden tanımlanmıştır. Html belgesini oluşturan kişi yalnızca standartlar tarafından tanımlanan etiketleri kullanabilir.

XML, xml belgesinin yazarının etiketlerini ve belge yapısını girmesine izin verir. Örnekte sağlanan etiketler (örneğin, ve ) XML standardı tarafından tanımlanmamıştır. Bu etiketler, belgenin yazarı tarafından tanıtıldı.

XML, HTML'yi tamamlayıcı niteliktedir

XML, HTML'nin yerini almaz.

XML'in HTML'nin yerine geçmediğini anlamak önemlidir. Gelecekte, web geliştiricileri verileri tanımlamak için XML kullanacak, HTML ise bu verileri biçimlendirmek ve görüntülemek için kullanılacaktır.

XML için en iyi tanımım şudur: XML, platformlar arası, yazılım ve donanımdan bağımsız bir iletişim aracıdır.

Not: Çapraz platform - Herhangi bir işletim sistemi ve herhangi bir donanım için uygundur.

Biliyorsanız, tanıdık Windows dışında çeşitli işletim sistemleri var. Bu işletim sistemi Linux, Mac ve diğerleri.

Donanıma gelince, şunu söyleyebiliriz: sıradan PC'ler, dizüstü bilgisayarlar, PDA'lar vb. Olabilir.

Gelecekteki Web Geliştirmede XML

XML her yerde kullanılacak.

Başlangıcından bu yana XML'in gelişimine tanık olduk. XML standardının ne kadar hızlı geliştirildiğini ve çok sayıda yazılım satıcısının standardı ne kadar çabuk benimsediğini görmek şaşırtıcıydı. XML'in İnternet'in geleceği için İnternet'in temeli olan HTML kadar önemli olacağına ve XML'in tüm veri işleme ve iletimi için en yaygın araç olacağına kuvvetle inanıyoruz.

Bugün çok popüler ve kullanışlı bir xML biçimlendirme dili... Bu veri sunum formatı çok esnek ve evrensel olduğundan ve hemen hemen her yerde kullanılabildiğinden, bir şeyden utanmaktan bahsediyorum. Bu nedenle, er ya da geç acemi bir programcı bu dille ilgilenmek zorunda kalacak ve web programlama veya veritabanı yönetimi olsun, tam olarak ne yaptığınız önemli değil, çünkü herkes XML kullanıyor ve siz de bunu uygulamada kullanacaksınız. ihtiyacınız olan görevler.

Her zamanki gibi teori ile başlayacağız, nasıl bir dil olduğuna, neden iyi olduğuna, nasıl kullanılacağına ve nerede kullanıldığına bakalım.

XML dil tanımı

XML (genişletilebilir İşaretleme Dili) İşletim sistemine ve işleme ortamına bağlı olmayan evrensel ve genişletilebilir bir veri işaretleme dilidir. Xml, bazı verileri bir yapı biçiminde temsil etmeye hizmet eder ve bu yapıyı kendiniz geliştirebilir veya belirli bir program veya bazı hizmetler için ayarlayabilirsiniz. Bu yüzden bu dile genişletilebilir denir ve bu onun için çok takdir edilen ana avantajıdır.

Bildiğiniz gibi, HTML gibi epeyce biçimlendirme dili vardır, ancak hepsi bir şekilde işleyiciye bağlıdır, örneğin kodu tarayıcı tarafından ayrıştırılan aynı html, standartlaştırılmıştır ve genişletilemez, açık etiketler vardır, ihlal edilemeyen sözdizimi vardır ve xml'de kendi etiketlerinizi oluşturabilirsiniz, örn. işaretlemeniz. HTML ve XML arasındaki temel fark, html'nin yalnızca verileri görüntülemek için biçimlendirmeyi tanımlaması ve xml'nin herhangi bir şekilde ve her yerde işlenebilen ve görüntülenebilen soyut bir veri yapısı olmasıdır ve bu nedenle bu dilleri karşılaştırmaya gerek yoktur. tamamen farklı amaçlar.

Yukarıda belirtildiği gibi, xml çok yaygın ve evrensel bir dildir ve hem web hem de yalnızca bir bilgisayar için neredeyse tüm uygulamaların onu bir bilgi alışverişi olarak kullandığı, çünkü uygulamalar veya hizmetler arasında çok kolay bir şekilde veri alışverişi yapmak için kullanılabilir. hatta farklı dillerde yazılmıştır. Bu bağlamda, kesinlikle herhangi bir programlamayla uğraşan her acemi programcının XML anlayışına sahip olması gerekir. Bir web uzmanı olmak istiyorsanız, o zaman XML bilmeniz yeterlidir ve biz zaten nasıl bir WEB Master olacağımızı ve bunun için bilmeniz gerekenleri düşündük.

Örneğin, bir zamanlar istek üzerine xml biçiminde veri döndürmesi gereken bir hizmet yazma görevim vardı, yani. Uygulamanın sunucu tarafını biraz geliştirdim ve istemcinin bu verileri işleyecek ne yazdığına dair hiçbir fikrim bile yoktu ve bu, verileri xml biçiminde döndüren bir hizmet yazdım ve işte bu, uygulama işe yaradı ince. Ve bu sadece yüzleşmem gereken bir örnek ve şimdi kaç farklı kuruluşun işbirliği yaptığını ve bilinçli bir şekilde yazılım geliştirdiğini ve veri alışverişini yaptığını hayal edin ve bu verilerin xml biçiminde olmasına şaşırmam.

Örneğin, bir zamanlar istek üzerine xml biçiminde veri döndürmesi gereken bir hizmet yazma görevim vardı, yani. Uygulamanın sunucu tarafını biraz geliştirdim ve istemcinin bu verileri işleyecek ne yazdığına dair hiçbir fikrim bile yoktu ve bu, verileri xml biçiminde döndüren bir hizmet yazdım ve işte bu, uygulama işe yaradı ince. Ve bu sadece yüzleşmem gereken bir örnek ve şimdi kaç farklı kuruluşun işbirliği yaptığını ve bilinçli bir şekilde yazılım geliştirdiğini ve veri alışverişini yaptığını hayal edin ve bu verilerin xml biçiminde olmasına şaşırmam.

Ayrıca, bir zamanlar bu verileri daha iyi temsil etmek ve uygulamanın sunucu ve istemci kısmı arasında değiş tokuş etmek için xml verilerini MS SQL 2008'de depolamak zorunda kaldım, bunu xml ile çalışan Transact-sql adlı makalede tartıştık.

XML dilinin kendisi çok basittir ve içinde kafa karıştırmak imkansızdır, tüm karmaşıklık tam olarak xml'nin diğer uygulamalarla, teknolojilerle işlenmesinde ve etkileşiminde ortaya çıkar. xml'yi çevreleyen her şey, bu da tam olarak kolayca kafanız karışabilecek şeydir.

Bugün sizinle sadece XML'in temellerinden bahsediyoruz ve bu doğru, çok hacimli bir materyal olduğu için işleme teknolojilerine ve bu dille etkileşime odaklanmayacağız, ancak gelecekte de ilgili konularla tanışmaya devam edeceğimizi düşünüyorum. teknolojileri.

Uygulamaya geçelim. Ve dikkate alacağımız tüm örnekler, sadece çok uygun olduğu için Notepad ++ ile yazacağım, ancak şimdi bunu daha önce makalede ele aldığımız için bunun hakkında konuşmayacağız - Notepad ++ hakkında iyi olan nedir? acemi bir geliştirici.

XML etiketleri

İşaretleme için XML, etiketleri kullanır ( etiketler büyük / küçük harfe duyarlıdır), ancak html'deki gibi etiketler değil, kendinizin oluşturduğu etiketler değil, ancak xml belgesinin de net bir yapısı var, yani. bir açılış etiketi ve bir bitiş etiketi vardır, iç içe geçmiş etiketler vardır ve elbette bu etiketlerde bulunan değerler vardır. Başka bir deyişle, xml ile başlamak için tek yapmanız gereken bu kurallara bağlı kalmaktır. Birlikte, açılış, kapanış etiketi ve değer bir öğe olarak adlandırılır ve tüm xml belgesi, birlikte bir veri yapısı oluşturan öğelerden oluşur. Bir xml belgesinin yalnızca bir kök öğesi olabilir, bunu unutmayın, çünkü iki kök öğe yazarsanız, bu bir hata olur.

Ve bir xml işaretlemesi örneği ve sözdizimi için şimdiye kadarki ilk örneği vermenin zamanı geldi:

<Начало элемента> <Начало вложенного элемента> İç içe yerleştirilmiş öğenin değeri

Gördüğünüz gibi, her şey oldukça basit ve bu kadar çok iç içe geçmiş öğe olabilir.

Şimdi bir örnek verelim, gerçek bir xml belgesi:

Gördüğünüz gibi, burada bir tür kitap kataloğu örneği verdim, ancak bu belgeyi açıklamadım, yani. bu verileri işleyecek uygulamaya xml verilerinin burada bulunduğunu ve hangi kodlamada sunulduğunu söyleyen bir XML bildirimi yazmadı. Ayrıca yorum ve öznitelikler de yazabilirsiniz, bu yüzden böyle bir belgeye bir örnek verelim:

1 kitap Ivan Sadece Kitap 1 Kitap 2 Sergey Sadece Kitap 2 Kitap 3 Roman Sadece Kitap 3

İlk satır, bunun bir XML belgesi olduğuna ve UTF-8 kodlamasında okunması gerektiğine dair bildirimin beyanıdır.

Bu veriler işlenmeden örneğin bir tarayıcıda (Mozilla Firefox) aşağıdaki gibi görünecektir:

Umarım burada katalog öğesinin kitap öğelerinden oluşan ve adı, yazarı ve yorum öğelerinden oluşan kök öğe olduğunu anlamışsınızdır, ayrıca örneğin, katalog öğesi ve kitap öğesi için birkaç öznitelik ayarlıyorum.

Temel bilgiler için, bence bu yeterli, çünkü XML'e ve bu dille ilişkili tüm teknolojilere daha derin ve daha derine dalarsak, o zaman bu makale asla bitmeyecek. Yani bugünlük hepsi bu. A kadar!

Muhtemelen XML'i duymuşsunuzdur ve kuruluşunuzda neden kullanılması gerektiğini biliyorsunuzdur. Peki XML tam olarak nedir? Bu makale XML'in ne olduğunu ve nasıl çalıştığını açıklamaktadır.

Bu makalede

İşaretlemeler, biçimlendirme ve etiketler

XML'i anlamak için verileri nasıl etiketleyebileceğinizi hatırlamak faydalı olacaktır. Dokümanlar yüzyıllardır insanlar tarafından oluşturulmuş ve bu süre boyunca insanlar üzerine notlar almışlardır. Örneğin, öğretmenler genellikle paragrafları taşıma, cümleleri daha anlaşılır hale getirme, yazım hatalarını düzeltme vb. Gerektiğini belirtmek için öğrenci kağıtlarını işaretler.Bir belgeyi işaretleyerek, bilginin yapısını, anlamını ve görünümünü tanımlayabilirsiniz. Daha önce Microsoft Office Word düzeltmelerini kullandıysanız, bilgisayarlı biçimlendirme formuna aşinasınızdır.

Bilgi teknolojisi dünyasında, "etiketleme" terimi "işaretleme" terimi haline geldi. İşaretleme, yapıyı, görsel sunumu ve XML durumunda verilerin anlamını tanımlamak için etiketler (veya bazen belirteçler) adı verilen kodları kullanır.

Bu makalenin HTML metni, bilgisayar biçimlendirmesinin kullanımına iyi bir örnektir. Microsoft Internet Explorer'da bu sayfaya sağ tıklar ve HTML Kodunu Görüntüleokunabilir metin ve HTML etiketleri göreceksiniz.

VE

... HTML ve XML belgelerinde, açılı parantez içine alındıklarından etiketlerin tanınması kolaydır. Bu makalenin orijinal metninde, HTML etiketleri, her paragrafın başlangıcını ve sonunu tanımlama (

...

) ve şekillerin yeri.

XML'in ayırt edici özellikleri

HTML ve XML belgeleri etiketli veriler içerir, ancak iki dil arasındaki benzerliklerin bittiği yer burasıdır. HTML'de etiketler, verilerin nasıl biçimlendirileceğini tanımlar - başlıkların konumu, paragrafın başlangıcı vb. XML'de etiketler, verilerin yapısını ve anlamını - ne olduğunu tanımlar.

Verinin yapısını ve anlamını tanımlayarak, onu birkaç şekilde yeniden kullanmak mümkün hale gelir. Örneğin, her bir öğenin açıkça tanımlandığı bir satış verisi bloğunuz varsa, yalnızca gerekli öğeleri satış raporuna yükleyebilir ve diğer verileri muhasebe veritabanına aktarabilirsiniz. Başka bir deyişle, verileri XML biçiminde oluşturmak ve etiketlemek için bir sistemi kullanabilir ve ardından bu verileri, istemci platformundan veya işletim sisteminden bağımsız olarak başka herhangi bir sistemde işleyebilirsiniz. Bu birlikte çalışabilirlik, XML'i en popüler veri alışverişi teknolojilerinden birinin temeli haline getirir.

Çalışırken şunları göz önünde bulundurun:

    XML yerine HTML kullanılamaz. Ancak, XML verileri HTML etiketlerine sarılabilir ve web sayfalarında görüntülenebilir.

    HTML yetenekleri, tüm kullanıcılar için ortak olan önceden tanımlanmış bir etiket kümesiyle sınırlıdır.

    XML kuralları, verileri ve yapısını açıklamak için gerekli tüm etiketleri oluşturmanıza olanak tanır. Evcil hayvanlarla ilgili bilgileri saklamanız ve paylaşmanız gerektiğini varsayalım. Bunu yapmak için aşağıdaki XML'yi oluşturabilirsiniz:

    Izzy Siyam 6 evet hayır İzz138bod Colin Wilcox

Gördüğünüz gibi, XML etiketleri size hangi verileri görüntülediğinizi söyler. Örneğin, bunun bir kedi hakkında veri olduğu açıktır ve adını, yaşını vb. Kolayca belirleyebilirsiniz.Neredeyse her veri yapısını tanımlayan etiketler oluşturma yeteneği sayesinde XML genişletilebilir.

Ancak bu örnekteki etiketleri HTML dosyasındaki etiketlerle karıştırmayın. Örneğin, yukarıdaki XML metni bir HTML dosyasına yapıştırılırsa ve bir tarayıcıda açılırsa, sonuçlar şöyle görünecektir:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

Web tarayıcısı XML etiketlerini yok sayacak ve yalnızca verileri görüntüleyecektir.

İyi biçimlendirilmiş veriler

Muhtemelen bazı BT uzmanlarının "iyi biçimlendirilmiş" bir XML dosyası hakkında konuştuğunu duymuşsunuzdur. İyi biçimlendirilmiş bir XML dosyası çok katı kurallara uymalıdır. Bu kurallara uymazsa XML çalışmayacaktır. Örneğin, önceki örnekte, her bir başlangıç \u200b\u200betiketinin karşılık gelen bir bitiş etiketi vardır, bu nedenle bu örnekte iyi biçimlendirilmiş XML dosyasının kurallarından biri karşılanmıştır. Dosyadan herhangi bir etiketi kaldırırsanız ve bunu Office programlarından birinde açmaya çalışırsanız, bir hata mesajı görüntülenir ve böyle bir dosyayı kullanamazsınız.

İyi biçimlendirilmiş bir XML dosyası oluşturmak için kuralları bilmenize gerek yoktur (anlaşılması kolay olsa da), ancak diğer uygulamalarda ve sistemlerde yalnızca iyi biçimlendirilmiş XML verilerini kullanabileceğinizi unutmayın. XML dosyası açılmazsa, büyük olasılıkla hatalı biçimlendirilmiştir.

XML platformdan bağımsızdır, yani XML kullanmak üzere oluşturulmuş herhangi bir program, donanım veya işletim sisteminden bağımsız olarak XML verilerini okuyabilir ve işleyebilir. Örneğin, doğru XML etiketlerini uygularsanız, ana bilgisayardaki verileri açmak ve işlemek için bir masaüstü programı kullanabilirsiniz. Ve XML verilerini kimin oluşturduğuna bakılmaksızın, çeşitli Office uygulamalarında verilerle çalışabilirsiniz. Birlikte çalışabilirliği nedeniyle XML, veritabanları ve kullanıcı bilgisayarları arasında veri alışverişi için en popüler teknolojilerden biri haline geldi.

İyi biçimlendirilmiş etiketli verilere ek olarak, XML sistemleri tipik olarak iki ek bileşen kullanır: şemalar ve dönüşümler. Aşağıdaki bölümler nasıl çalıştıklarını açıklamaktadır.

Şemalar

"Şema" teriminden korkmayın. Şema, bir XML veri dosyasının içeriğine ilişkin kuralları içeren bir XML dosyasıdır. Şema dosyaları genellikle XSD uzantısına sahipken, XML veri dosyaları XML uzantısını kullanır.

Şemalar, programların verileri doğrulamasına izin verir. Verinin yapısını oluştururlar ve onu oluşturan ve diğer insanlar için anlaşılır hale getirir. Örneğin, bir kullanıcı bir tarih alanına metin gibi geçersiz veriler girerse, program ondan bunu düzeltmesini isteyebilir. XML dosyasındaki veriler şemadaki kurallara uyuyorsa, onu okumak, yorumlamak ve işlemek için XML'yi destekleyen herhangi bir programı kullanabilirsiniz. Örneğin, aşağıdaki resimde gösterildiği gibi, Excel verileri doğrulayabilir CAT şemasına uygunluk için.

Diyagramlar karmaşık olabilir ve bu makale bunların nasıl oluşturulacağını açıklayamaz. (Ayrıca, büyük olasılıkla, kuruluşunuzda bunu nasıl yapacağını bilen BT çalışanları vardır.) Ancak, diyagramların neye benzediğini bilmek yararlıdır. Aşağıdaki şema, bir dizi etiket için kuralları tanımlar ... :

Örnek net değilse endişelenmeyin. Sadece şunlara dikkat edin:

    Yukarıdaki örnek şemadaki satır içi öğelere bildirimler denir. Hayvan hakkında renk veya özel özellikler gibi ek bilgiler gerekirse, BT şemaya reklamlar ekler. XML sistemi, iş ihtiyaçları geliştikçe değiştirilebilir.

    Bildirimler, veri yapılarını işlemek için güçlü araçlardır. Örneğin beyanname gibi etiketler anlamına gelir ve yukarıdaki sırayla takip edilmelidir. Ayrıca, kullanıcı tarafından girilen veri türlerini doğrulamak için bildirimleri de kullanabilirsiniz. Örneğin, yukarıdaki şema, kedinin yaşı için pozitif bir tamsayı ve ALTERED ve DECLAWED etiketleri için Boole değerleri (DOĞRU veya YANLIŞ) gerektirir.

    XML dosyasındaki veriler şema kurallarına uyuyorsa, verilerin geçerli olduğu söylenir. Bir XML veri dosyasının şema kurallarına uygun olduğunu doğrulama işlemi (mantıksal olarak) doğrulama olarak adlandırılır. Şemaları kullanmanın en büyük avantajı, veri bozulmasını önleyebilmeleridir. Şemalar ayrıca bozuk verileri bulmayı kolaylaştırır, çünkü bu sorun ortaya çıktığında XML dosyasının işlenmesi durur.

Dönüşümler

Yukarıda tartışıldığı gibi, XML ayrıca verilerin verimli kullanımına ve yeniden kullanımına da izin verir. Verileri yeniden kullanma mekanizmasına XSLT dönüşümü (veya basitçe dönüşüm) denir.

Siz (veya BT departmanınız), veritabanları arasında olduğu gibi arka uç sistemler arasında veri alışverişi yapmak için de dönüşümleri kullanabilirsiniz. Veritabanı A'nın satış verilerini satış departmanı için uygun olan bir tabloda depoladığını varsayalım. Veritabanı B, gelir ve giderlerle ilgili verileri muhasebe için özel olarak tasarlanmış bir tabloda depolar. Veritabanı B, veritabanı A'dan veri almak ve uygun tablolara yerleştirmek için bir dönüşüm kullanabilir.

Veri dosyası, şema ve dönüşümün birleşimi, temeldeki XML sistemini oluşturur. Aşağıdaki şekil bu tür sistemlerin işleyişini göstermektedir. Veri dosyası şema kurallarına göre kontrol edilir ve ardından dönüştürme için herhangi bir uygun yolla aktarılır. Bu durumda, dönüşüm verileri web sayfasındaki bir tabloya yerleştirir.

Aşağıdaki örnek, verileri yükleyen bir dönüşüm sağlar web sayfasındaki bir tabloya. Örneğin amacı, dönüşümlerin nasıl yaratılacağını açıklamak değil, alabilecekleri formlardan birini göstermektir.

İsim Soyisim Doğurmak Yaş Değiştirildi Yasadışı Lisans Sahip

Bu örnek, dönüştürme türlerinden birinin metninin nasıl görünebileceğini gösterir, ancak kendinizi verilerden neye ihtiyacınız olduğuna dair net bir açıklama ile sınırlayabileceğinizi ve bu açıklamanın kendi dilinizde yapılabileceğini unutmayın. Örneğin, BT departmanına gidip, son iki yıla ait belirli bölgelere ait satış verilerini yazdırmak istediğinizi ve bilgilerin şunun gibi görünmesi gerektiğini söyleyebilirsiniz. Departman daha sonra isteğinizi yerine getirmek için bir dönüştürme yazabilir (veya değiştirebilir).

Microsoft ve artan sayıda başka şirket, XML'in kullanımını daha da kolaylaştırmak için çeşitli görevler için dönüşümler yaratıyor. Gelecekte, büyük olasılıkla ihtiyaçlarınıza uygun bir dönüşümü ek yapılandırma olmadan veya küçük değişikliklerle indirebileceksiniz. Bu, zamanla XML kullanımının daha az ve daha ucuz olacağı anlamına gelir.

Microsoft Office sisteminde XML

Office'in profesyonel sürümleri, gelişmiş XML desteği sağlar. 2007 Microsoft Office Sisteminden başlayarak, Microsoft Office DOCX, XLSX ve PPTX gibi XML tabanlı dosya biçimlerini kullanır. XML, verileri yerel bir ikili biçim yerine bir metin biçiminde depoladığından, müşteriler kendi şemalarını tanımlayabilir ve verilerinizi telif ücreti ödemeden çeşitli şekillerde kullanabilir. Yeni biçimler hakkında daha fazla bilgi için Açık XML Biçimleri ve Dosya Adı Uzantıları başlıklı makaleye bakın. Diğer faydalar aşağıda verilmiştir.

Bunların hepsi harika, ama ya şemasız XML verileriniz varsa? Hangi Office programını kullandığınıza bağlıdır. Örneğin, Excel'de şema olmayan bir XML dosyasını açtığınızda, şemanın var olduğunu varsayar ve size verileri bir XML tablosuna yükleme seçeneği sunar. Verileri sıralamak, filtrelemek ve hesaplamak için XML listelerini ve tablolarını kullanabilirsiniz.

Office'te XML Araçlarını Etkinleştirme

Varsayılan olarak, Geliştirici sekmesi görüntülenmez. Office'te XML komutlarını kullanmak için şeride eklenmesi gerekir.