XML

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Notă despre dezambiguizare.svg Dezambiguizare - Dacă sunteți în căutarea altor semnificații, consultați XML (dezambiguizare) .
XML
XML.svg
Extensie .xml
Tip MIME application/xml
text/xml
Dezvoltat de W3C
Tip Limbaj de marcare
Extensie aSGML
Extins la XHTML , RSS , Atom și altele
Formatul deschis ? Da

În informatică , XML (abrevierea pentru eXtensible Markup Language , lit. „limbaj de marcare extensibil”) este un limbaj metalic pentru definirea limbajelor de markup , adică un limbaj bazat pe un mecanism sintactic care permite definirea și verificarea semnificației elementelor conținute în un document sau un text.

Numele indică faptul că este un limbaj extensibil, deoarece vă permite să creați etichete personalizate și este o încercare de a produce o versiune simplificată aStandard Generalized Markup Language (SGML), care vă permite să definiți noi limbaje de markup.

Istorie

Consorțiul World Wide Web (W3C), după războiul browserului (adică situația care a avut loc în anii nouăzeci în care Microsoft și Netscape au introdus, cu fiecare nouă versiune a browserului lor, o extensie proprietară la HTML oficial), a fost forțată în urma extensii individuale la limbajul HTML. [ conexiunea este neclară ]

W3C a trebuit să aleagă ce caracteristici să standardizeze și pe care să le lase în afara specificațiilor HTML oficiale. În acest context a început să apară nevoia unui limbaj de marcare care să ofere mai multă libertate în definirea etichetelor, rămânând în același timp într-un standard.

„Proiectul XML”, care a început la sfârșitul anilor 1990 ca parte a activității SG3 W3C, a stârnit un interes atât de puternic încât W3C a creat un grup de lucru, numit Grupul de lucru XML , format din experți mondiali în tehnologii SGML . Și o comisie , Comitetul de revizuire editorial XML , responsabil cu elaborarea specificațiilor proiectului.

În februarie 1998 , specificația a devenit o recomandare oficială sub numele Extensible Mark-up Language , versiunea 1.0. Curând s-a realizat că XML nu se limitează doar la contextul web, ci este ceva mai mult: un instrument care îi permite să fie folosit în cele mai diverse contexte, de la definirea structurii documentului , la schimbul de informații între diferite sisteme , de la reprezentarea imaginilor la definirea formatelor de date .

Utilizări

În comparație cu HTML , XML are un scop foarte diferit: în timp ce primul definește o gramatică pentru descrierea și formatarea paginilor web ( aspect ) și, în general, pentru hipertexte , al doilea este un limbaj metalic folosit pentru a crea limbaje noi, adecvat pentru descrierea structurată documente. În timp ce HTML are un set bine definit și restrâns de etichete, cu XML este posibil să vă definiți propriile în funcție de nevoile dvs.

În zilele noastre, XML este de asemenea utilizat pe scară largă ca mijloc de export al datelor între diferite SGBD . Răspândită este utilizarea în fișierele de configurare a aplicațiilor și a sistemelor de operare .

Sintaxă

Iată un exemplu tipic de fișier XML, care poate fi vizualizat în orice browser pur și simplu prin salvarea textului într-un fișier cu extensia .xml .

 <? xml version = "1.0" encoding = "UTF-8"?>
<utilizatori>
    <user years = "20" >
        <name> Ema </name>
        <surname> Princi </surname>
        <adresă> Torino </adresă>
    </user>
    <user years = "54" >
        <name> Max </name>
        <surname> Rossi </surname>
        <adresă> Roma </adresă>
    </user>
</user>

Prima linie indică versiunea XML utilizată și specifică codarea UTF-8 pentru interpretarea corectă a datelor.

Caracterele speciale care ar face ca documentul să nu fie format trebuie înlocuite cu entitățile XML respective:

Caracter Entitate
& &amp;
< &lt;
> &gt;
" &quot;
' &apos;

Trebuie remarcat faptul că doar primele trei [ sau doar primele 2? ] entitățile trebuie întotdeauna respectate, în timp ce ultimele &apos; în unele cazuri nu este gestionat (ca în iPhone iOS 3.1.3 și versiuni ulterioare).

Etichete sau etichete

XML, la fel ca HTML , folosește markeri, numiți etichete , pentru a atribui semantică textului. Etichetele pot conține informații în două moduri: prin intermediul parametrilor sau prin încadrarea textului sau a altor tipuri de informații. Rezultă că pot fi etichete de deschidere, urmate în mod necesar de etichete de închidere (printre care puteți avea un conținut) sau etichete care se deschid și se închid și, prin urmare, pot furniza informații numai prin intermediul parametrilor lor.

Fiecare etichetă începe și se termină cu paranteze unghiulare ( <> ) (care în alte contexte ar fi semnele minore și majore), în timp ce eticheta de închidere sau eticheta de închidere este reprezentată de bară ( / ). Iată câteva exemple de etichete:

 <tagExample parameter1 = "tag de deschidere" features = "numai tag-ul de deschidere are parametri" >
    conţinut
</tagExample>
<tagAutoclosing parameter1 = "etichetă de închidere automată" caracteristici = "nu are etichetă de închidere" />

XML permite comentariile cuprinse de <!-- --> De exemplu:

 <! - Acesta este un comentariu ->

XML este foarte strict în ceea ce privește sintaxa care trebuie urmată în ceea ce privește HTML și, prin urmare, este necesar să respectați câteva reguli:

  1. etichetele nu pot începe cu cifre sau caractere speciale și nu pot conține spații;
  2. etichetele trebuie să fie echilibrate, adică erorile de cuibărire nu sunt permise, de exemplu:
 <book>
  <name> Mario </name>
  <numele> Rossi
</rubrica>

Eticheta de cognome nu a fost închisă, prin urmare XML-ul este slab format.

 <book>
  <name> Mario </name>
  <numele> Rossi
</rubrica> </surname>

Eticheta de cognome fost închisă după eticheta de rubrica , din nou XML-ul nu este bine format.

 <book>
  <name> Mario </name>
  <surname> Rossi </SURNAME>
</rubrica>

XML este diferențiat de majuscule și minuscule, astfel încât eticheta de cognome și eticheta COGNOME sunt considerate două etichete diferite; XML din nou nu este bine format.

De asemenea, este posibil să definiți etichete goale care sunt deschise și închise imediat:

 <rubrica> </rubrica>

Sau în formă prescurtată:

 <agenda telefonică />

Pentru a fi interpretat corect, un document XML trebuie formatat corect, adică trebuie să aibă următoarele caracteristici:

  • Un prolog , care este prima instrucțiune care apare scrisă în document. În cazul nostru: <?xml version="1.0" encoding="UTF-8"?> .
  • Un singur element rădăcină (alias nodul rădăcină , numit element rădăcină ) care conține toate celelalte noduri din document. În exemplul nostru: <utenti> .
  • În cadrul documentului, toate etichetele trebuie să fie echilibrate.

Dacă documentul XML nu conține erori, se spune că este bine format . Dacă documentul este bine format și îndeplinește și cerințele structurale definite în schema XML asociată sau în fișierul DTD , acesta se numește valid .

Avantajele XML

Avantajele XML sunt de obicei rezumate cu acronimul SPEED, de asemenea, înțeles cu sensul cuvântului în engleză (adică „viteză”). Viteza este în primul rând principalul motiv pentru care multe companii trec la comerțul electronic: răspuns mai rapid la nevoile clienților, livrare mai rapidă a informațiilor către clienți și partenerii din lanțul de aprovizionare; procesarea mai rapidă a comenzilor primite prin Internet. Arhonimul derivă din stocarea, publicarea și schimbul de documente electronice („stocarea, publicarea și schimbul de documente electronice”).

În XML, informațiile specifice aplicației sunt conținute în „etichete”, marcate cu paranteze < > , care descriu conținutul unui document. Fiecare etichetă definește un tip de element și, prin delimitarea fiecărei piese de date cu etichete, suntem capabili să înțelegem structura acesteia chiar dacă nu cunoaștem aplicația care a generat-o. Deoarece datele se autodescriu, partenerii vor putea, de asemenea, să le înțeleagă și să le proceseze. În plus, pot fi gestionate și în viitor, atunci când aplicațiile care le-au generat au devenit învechite.

Extensibilitatea este o altă caracteristică câștigătoare a XML, deoarece programatorii pot reutiliza documentele XML existente prin simpla extindere a acestora cu etichete noi, lăsând elementele cheie ale documentului original să rămână ușor de înțeles de către toți utilizatorii.

XML a răspuns la proverbialul motto american: „adoptă și adaptează-te”, adică adoptă un standard câștigător și de încredere și adaptează-l la nevoile tale.

Un alt avantaj deloc neglijabil al XML este posibilitatea validării acestora prin utilizarea schemei XML (XSD) [1] .

Această posibilitate nu este prezentă în alte formate interschimbabile, inclusiv JSON .

Prin urmare, pentru a rezuma avantajele XML, se poate spune că XML necesită:

  • mai puțin efort de întreținere;
  • reutilizare mai bună;
  • capacitate sporită de a viza mai multe dispozitive;
  • posibilitatea de a reduce resursele dedicate implementării proiectelor.

Tehnologii de suport XML

Limbi schemă (vă permit să creați limbi XML noi):

  • DTD (acronim pentru Definirea tipului de document ): este un document prin care caracteristicile structurale ale unui document XML sunt specificate printr-o serie de „reguli gramaticale”. În special, definește setul de elemente ale documentului XML, relațiile ierarhice dintre elemente, ordinea de apariție în documentul XML și ce elemente și care atribute sunt opționale sau nu.
  • Schema XML : La fel ca DTD, este utilizată pentru a defini structura unui document XML. Astăzi, W3C recomandă adoptarea acestuia în loc de DTD în sine, fiind o tehnică mai recentă și mai avansată. Abrevierea sa este XSD, care înseamnă XML Schema Definition .

Alte tehnologii legate de XML:

  • XLink : este folosit pentru a lega complet două documente XML; spre deosebire de hyperlinkurile clasice pe care le cunoaștem în HTML , XLink vă permite să creați linkuri multidirecționale și semantic avansate.
  • XSL (acronim pentru eXtensible Stylesheet Language ): este limba utilizată pentru a descrie foaia de stil a unui document XML. Versiunea sa extinsă este XSLT (unde T reprezintă Transformations ).
  • XPath : este un limbaj cu care este posibil să se identifice porțiuni dintr-un document XML și stă la baza altor instrumente pentru XML, cum ar fi XQuery.
    Pentru a susține acest scop principal, acesta oferă, de asemenea, funcționalități de bază pentru gestionarea șirurilor, numerelor și datelor booleene. Funcționarea sa se bazează pe crearea unui copac pornind de la documentul și sintaxa succintă permite să abordeze o anumită parte prin nodurile arborelui cu calea cuvântul simplu.
  • XPointer : utilizat pentru a identifica în mod unic porțiuni precise ale unui document XML; apoi le permite accesul la alte limbi sau obiecte de interfață.
  • XQuery : este un limbaj de interogare conceput pentru a fi aplicabil oricărui tip de document XML și se bazează pe utilizarea XPath pentru specificarea căilor din documente. XQuery are funcții care vă permit să accesați mai multe surse de date pentru căutarea, filtrarea documentelor sau reunirea conținutului de interes.
  • SAX ( API simplu pentru XML): este o interfață de programare, implementată în numeroase limbi, care vă permite să citiți și să modificați documente XML. Prin SAX este posibilă implementarea analizelor XML specifice. SAX se bazează pe evenimente, spre deosebire de DOM și reacționează la analizarea evenimentelor raportând aplicației. Programul are sarcina de a implementa metode de reacție la analiza evenimentelor.
  • DOM : este o interfață de programare, ca SAX, implementată într-o multitudine de limbaje de programare , pentru manipularea fișierelor XML. DOM construiește un arbore pornind de la fișierul XML în care fiecare nod al arborelui corespunde unui element al fișierului; din acest motiv se numește bazat pe copac.
  • VTD-XML : DOM este mai ușor și mai imediat de utilizat decât SAX și, prin urmare, este de obicei preferat de programatori să manipuleze un fișier XML; totuși arborele generat de DOM trebuie păstrat complet în memoria RAM și, în consecință, nu este posibilă utilizarea acestei interfețe pentru a manipula fișiere care sunt mai mari decât memoria disponibilă pe computer.
  • RSS : este un standard utilizat pentru a crea un document cu o structură XML unică, potrivit pentru dezvoltarea unui schimb simplu de date între pagini Web și accesibil din orice limbaj de scriptare . Practic este un document XML a cărui structură de nod și etichete aferente au același nume.
  • SVG ( Scalable Vector Graphics ) și VML ( Vector Markup Language ) sunt standarde pentru crearea imaginilor vectoriale care profită de documentele formatate în XML. De asemenea, este folosit pentru a descrie imagini bidimensionale, statice și dinamice. Citind instrucțiunile conținute în documentul sursă XML, interpretul desenează cifrele de bază până când imaginea este completă.
  • WDDX (Word Data Description Exchange): WDDX este o structură pentru conținerea datelor cu aceeași structură ca o bază de date, creată de Allaire astăzi Macromedia și lansată Open la Organizația WDDX

Cele mai populare limbaje XML

  • XForms : așa cum sugerează și numele său, este un limbaj creat pentru a crea formulare de tip HTML într-un document XML.
  • SMIL ( Synchronized Multimedia Integration Language ): Acest limbaj definit în XML, este utilizat pentru a descrie conținutul și pentru a gestiona sincronizarea prezentărilor multimedia care pot combina video, audio, imagini și text împreună.
  • MathML (Mathematical Markup Language): MathML este utilizat pentru descrierea notațiilor matematice, procedând la fixarea structurii și conținutului acestora în același timp, astfel încât acestea să poată fi raportate și procesate pe web.
  • X3D (eXtensible 3D): X3D este un limbaj care vă permite să construiți modele tridimensionale, fie că sunt simple sau sofisticate. Animațiile și mecanismele de interacțiune cu utilizatorul pot fi aplicate obiectelor create în acest fel. Ca limbaj, acesta este construit pe limbajul de modelare a realității virtuale ( VRML ), adoptat la rândul său ca standard internațional în 1997. Pentru acesta din urmă, X3D include capacitățile, tipice limbajului extensibil de marcare (XML), de integrare cu alte Tehnologii World Wide Web, validarea conținutului și adăugarea flexibilă de noi extensii hardware, dacă este necesar. În plus, trebuie să menționăm avantajele în ceea ce privește ușurința „profilului de bază” (Profilul de bază - Există șapte profiluri, fiecare dintre acestea grupând un anumit set de caracteristici utilizate în mod obișnuit în scopuri diferite. Acest lucru permite dezvoltatorilor de browsere să atingă niveluri intermediare de X3D, fără a fi neapărat necesar să implementați întreaga specificație simultan) și browsere componentizate pentru descărcare mai rapidă.
  • XBRL (eXtensible Business Reporting Language): este un limbaj utilizat pentru comunicarea și schimbul de date financiare și contabile în format electronic

XML și pagini web: XHTML

XHTML este un limbaj de markup conceput pentru a afișa pagini web printr-un browser, cum ar fi HTML și, fiind XML, își respectă semantica. De exemplu, în XHTML, spre deosebire de HTML-ul tradițional, etichetele goale trebuie închise cu o bară finală (/), atributele goale trebuie setate la adevărat sau fals , închiderea etichetelor trebuie oglindită (dacă o etichetă și înainte de a o închide alta) este deschis, este necesar să închideți mai întâi a doua etichetă și apoi prima), unele etichete și atribute, în comparație cu HTML 4.0 au dispărut și există un DTD dedicat.

Tipul mime rezervat paginilor XHTML este (application / xhtml + xml). Dacă trimiteți o pagină XHTML nevalidă, dar ca text / html, se poate întâmpla ca aceasta să fie afișată deoarece este interpretată ca html (cu erori, cum ar fi etichetele închise precum <br />) numai că nu respectă standardul și nu se bucură de avantajele sale, printre care mai întâi portabilitatea pe diferite browsere și clienți. [2] Avantajul real al unei pagini XHTML este că, fiind XML, atrage toate avantajele sale, cum ar fi ușurința validării și interpretarea programatică. Paginile XHTML sunt de obicei mai ușor accesibile, având în vedere semantica XML.

Notă

  1. ^ Andrea Chiarelli, Schema XML și Documente XML , pe HTML.it. Adus la 16 octombrie 2020 .
  2. ^(EN) Trimiterea XHTML ca text / html considerat dăunător

Elemente conexe

Alte proiecte

linkuri externe

Controlul autorității LCCN (EN) sh97007825 · GND (DE) 4501553-3 · BNF (FR) cb131774360 (data) · BNE (ES) XX546216 (data)
Internet Portal internet : accesați intrările Wikipedia care se ocupă de internet