XML

De la Viquipèdia, l'enciclopèdia lliure.
Saltar a la navegació Saltar a la cerca
Nota de desambiguació.svg Desambiguació : si busqueu altres significats, consulteu XML (desambiguació) .
XML
XML.svg
Extensió .xml
Tipus MIME application/xml
text/xml
Desenvolupat per W3C
Paio Llenguatge de marques
Extensió de SGML
Estès a XHTML ,RSS , Atom i altres
Voleu obrir el format ?

En informàtica , XML (abreviatura de eXtensible Markup Language , lit. "llenguatge de marcatge extensible") és un metallenguatge per a la definició de llenguatges de marques , que és un llenguatge basat en un mecanisme sintàctic que permet definir i controlar el significat dels elements continguts en un document o text.

El nom indica que és un llenguatge extensible, ja que us permet crear etiquetes personalitzades i és un intent de produir una versió simplificada del llenguatge de marcatge generalitzat estàndard (SGML), que us permet definir nous llenguatges de marcatge.

Història

El World Wide Web Consortium (W3C), després de la guerra del navegador (és a dir, la situació que es va produir als anys noranta en què Microsoft i Netscape van introduir, amb cada nova versió del seu navegador , una extensió propietària de l’ HTML oficial), es va veure obligat a seguir extensions individuals al llenguatge HTML. [ la connexió no està clara ]

El W3C va haver de triar quines funcions estandarditzar i quines deixar fora de l’especificació HTML oficial. Va ser en aquest context que va començar a sorgir la necessitat d’un llenguatge de marques que donés més llibertat en la definició d’etiquetes, tot mantenint-se en un estàndard.

El "projecte XML", que va començar a finals dels anys noranta com a part de l' activitat SG3 del W3C, va despertar un interès tan fort que el W3C va crear un grup de treball, anomenat XML Working Group , format per experts mundials en tecnologies SGML . I una comissió , XML Review Review Board , responsable de redactar les especificacions del projecte.

El febrer de 1998, l'especificació es va convertir en una recomanació oficial amb el nom de Extensible Mark-up Language , versió 1.0. Aviat es va adonar que XML no es limitava només al context web , sinó que era una mica més: una eina que permetia utilitzar-lo en els contextos més diversos, des de la definició de l'estructura del document , fins a l'intercanvi d'informació entre diferents sistemes , des de la representació d’imatges fins a la definició de formats de dades .

Usos

En comparació amb l’ HTML , l’XML té un propòsit molt diferent: mentre que el primer defineix una gramàtica per a la descripció i el format de les pàgines web ( disseny ) i, en general, els hipertextos , el segon és un metallenguatge utilitzat per crear nous llenguatges, adequat per a la descripció d’estructures. documents. Tot i que HTML té un conjunt d’etiquetes ben definit i restringit, amb XML és possible definir-ne les vostres segons les vostres necessitats.

Actualment, XML també s’utilitza àmpliament com a mitjà per exportar dades entre diferents SGBD . És generalitzat l’ús en fitxers de configuració d’ aplicacions i sistemes operatius .

Sintaxi

Aquí teniu un exemple típic d’un fitxer XML, que es pot veure en qualsevol navegador simplement desant el text en un fitxer amb l’ extensió .xml .

 <? xml version = "1.0" encoding = "UTF-8"?>
<usuaris>
    <user years = "20" >
        <name> Ema </name>
        <surname> Princi </surname>
        <adreça> Torí </adreça>
    </usuari>
    <user years = "54" >
        <name> Màxim </name>
        <surname> Rossi </surname>
        <adreça> Roma </adreça>
    </usuari>
</usuari>

La primera línia indica la versió d’XML que s’utilitza i especifica la codificació UTF-8 per a una interpretació correcta de les dades.

Els caràcters especials que faran que el document tingui un format incorrecte s'han de substituir per les entitats XML respectives:

Personatge Entitat
& &amp;
< &lt;
> &gt;
" &quot;
' &apos;

Cal tenir en compte que només els tres primers [ o només els primers 2? ] les entitats sempre s'han de respectar, mentre que les darreres &apos; en alguns casos no es gestiona (com en l'iPhone iOS 3.1.3 i versions posteriors).

Etiquetes o etiquetes

XML, com HTML , utilitza marcadors, anomenats etiquetes , per assignar semàntica al text. Les etiquetes poden contenir informació de dues maneres: mitjançant paràmetres o incloure text o altres tipus d’informació. D’això se’n desprèn que poden ser etiquetes d’obertura, necessàriament seguides d’etiquetes de tancament (entre les quals es pot tenir un contingut) o etiquetes que s’obren i es tanquen i, per tant, només poden proporcionar informació a través dels seus paràmetres.

Cada etiqueta comença i acaba amb claudàtors angulars ( <> ) (que en altres contextos serien el signe menor i major), mentre que l'etiqueta de tancament o l'etiqueta de tancament es representa amb la barra inclinada ( / ). Aquí hi ha alguns exemples d’etiquetes:

 <tagExample parametre1 = "etiqueta d'obertura" features = "només l'etiqueta d'obertura té paràmetres" >
    contingut
</tagExample>
<TagAutoclosing paràmetre1 = "etiqueta de tancament automàtic" característiques = "no té etiqueta de tancament" />

XML permet comentaris inclosos per <!-- --> Per exemple:

 <! - Aquest és un comentari ->

XML és molt estricte quant a la sintaxi a seguir respecte a HTML i, per tant, és necessari respectar algunes regles:

  1. les etiquetes no poden començar amb números o caràcters especials i no poden contenir espais;
  2. les etiquetes han d'estar equilibrades, és a dir, no es permeten errors de nidificació, per exemple:
 <libre>
  <name> Mario </name>
  <cognom> Rossi
</rubrica>

L'etiqueta de cognome no s'ha tancat, per tant, l'XML està mal format.

 <libre>
  <name> Mario </name>
  <cognom> Rossi
</rubrica> </surname>

L'etiqueta de cognome va tancar després de l'etiqueta de rubrica , de nou l'XML no està ben format.

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

L’XML distingeix entre majúscules i minúscules, de manera que l’etiqueta de cognome i la de COGNOME es consideren dues etiquetes diferents; XML de nou no està ben format.

També és possible definir etiquetes buides que s’obren i es tanquen immediatament:

 <rubrica> </rubrica>

O en forma abreujada:

 <agenda telefònica />

Per poder ser interpretat correctament, un document XML ha de tenir un format correcte, és a dir, ha de tenir les característiques següents:

  • Un pròleg , que és la primera instrucció que apareix escrita al document. En el nostre cas: <?xml version="1.0" encoding="UTF-8"?> .
  • Un únic element arrel (també conegut com a node arrel , anomenat element arrel ) que conté tots els altres nodes del document. Al nostre exemple: <utenti> .
  • Dins del document totes les etiquetes han d'estar equilibrades.

Si el document XML no conté errors, es diu que està ben format . Si el document està ben format i també compleix els requisits estructurals definits a l’esquema XML associat o al fitxer DTD , s’anomena vàlid .

Avantatges de XML

Els avantatges de XML es resumeixen generalment amb l'acrònim SPEED, també significat amb el significat de la paraula en anglès (és a dir, "velocitat"). La velocitat és en primer lloc la principal raó per la qual moltes empreses passen al comerç electrònic: resposta més ràpida a les necessitats dels clients, lliurament més ràpid d’informació als clients i socis de la cadena de subministrament; processament més ràpid de les comandes rebudes a través d'Internet. L'arxònim deriva de Emmagatzematge, publicació i intercanvi de documents electrònics ("emmagatzematge, publicació i intercanvi de documents electrònics").

En XML, la informació específica de l'aplicació es troba dins de les "etiquetes", marcades amb claudàtors < > , que descriuen el contingut d'un document. Cada etiqueta defineix un tipus d’element i, en delimitar cada dada amb etiquetes, podem entendre la seva estructura encara que no coneguem l’aplicació que l’ha generat. Com que les dades s’auto-descriuen, els socis també podran entendre-les i processar-les. A més, també es poden gestionar en el futur quan les aplicacions que les generin hagin quedat obsoletes.

L'extensibilitat és una altra característica guanyadora de l'XML, ja que és possible que els programadors reutilitzin documents XML existents simplement ampliant-los amb etiquetes noves, deixant que els elements clau del document original siguin comprensibles per a tots els usuaris.

XML ha respost al proverbial lema americà: "adoptar i adaptar-se", és a dir, adoptar un estàndard fiable i guanyador i adaptar-lo a les vostres necessitats.

Un altre avantatge no menyspreable de XML és la possibilitat de validar-los mitjançant l'ús de XML Schema (XSD) [1] .

Aquesta possibilitat no està present en altres formats intercanviables, inclòs el JSON .

Per resumir els avantatges de XML, per tant, es pot dir que XML requereix:

  • menor esforç de manteniment;
  • millor reutilització;
  • major capacitat per orientar-se a diversos dispositius;
  • possibilitat de reduir els recursos dedicats a la implementació de projectes.

Tecnologies de suport XML

Idiomes d'esquema (us permeten crear llenguatges XML nous):

  • DTD (acrònim de Document Type Definition ): és un document mitjançant el qual s’especifiquen les característiques estructurals d’un document XML mitjançant una sèrie de “regles gramaticals”. En particular, defineix el conjunt d’elements del document XML, les relacions jeràrquiques entre els elements, l’ordre d’aparició al document XML i quins elements i quins atributs són opcionals o no.
  • Esquema XML : igual que el DTD, s’utilitza per definir l’estructura d’un document XML. Avui el W3C recomana adoptar-lo en lloc de la pròpia DTD, sent una tècnica més recent i avançada. La seva abreviatura és XSD, que significa XML Schema Definition .

Altres tecnologies relacionades amb XML:

  • XLink : s'utilitza per enllaçar completament dos documents XML; a diferència dels clàssics hipervincles que coneixem a HTML , XLink us permet crear enllaços multidireccionals i semànticament avançats.
  • XSL (acrònim de eXtensible Stylesheet Language ): és el llenguatge utilitzat per descriure el full d' estil d'un document XML. La seva versió ampliada és XSLT (on T significa Transformacions ).
  • XPath : és un llenguatge amb el qual és possible identificar porcions d’un document XML i és la base d’altres eines per a XML com XQuery.
    Per donar suport a aquest propòsit principal, també proporciona funcionalitats bàsiques per tractar cadenes, números i dades booleanes. El seu funcionament es basa en la creació d’un arbre a partir del document i la sintètica sintètica permet abordar una part específica a través dels nodes de l’arbre amb el simple camí de la paraula.
  • XPointer : s'utilitza per identificar de manera única porcions precises d'un document XML; llavors permet l'accés a altres idiomes o objectes d'interfície.
  • XQuery : és un llenguatge de consulta dissenyat per ser aplicable a qualsevol tipus de document XML i es basa en l’ús de XPath per especificar camins dins dels documents. XQuery té funcions que us permeten accedir a diverses fonts de dades per cercar, filtrar documents o recopilar contingut d’interès.
  • SAX (Simple API for XML): és una interfície de programació, implementada en nombrosos idiomes, que permet llegir i modificar documents XML. A través de SAX és possible implementar analitzadors XML específics. SAX es basa en esdeveniments, a diferència de DOM , i reacciona a l'anàlisi d'esdeveniments informant a l'aplicació. La tasca del programador és implementar mètodes per reaccionar a l’anàlisi d’esdeveniments.
  • DOM : és una interfície de programació, com SAX, implementada en multitud dellenguatges deprogramació , per manipular fitxers XML. DOM crea un arbre a partir del fitxer XML on cada node de l'arbre correspon a un element del fitxer; per aquest motiu s’anomena basat en arbres.
  • VTD-XML : el DOM és més fàcil i immediat d’utilitzar que el SAX i, per tant, els programadors solen preferir manipular un fitxer XML; tanmateix, l'arbre generat per DOM s'ha de mantenir completament a la memòria RAM i, per tant, no és possible utilitzar aquesta interfície per manipular fitxers més grans que la memòria disponible a l'ordinador.
  • RSS : és un estàndard que s’utilitza per crear un document amb una estructura XML única, adequat per al desenvolupament d’un intercanvi de dades senzill entre pàgines web i accessible des de qualsevol llenguatge de script . Bàsicament es tracta d’un document XML l’estructura del node i les etiquetes relacionades tenen el mateix nom.
  • SVG ( Scalable Vector Graphics ) i VML ( Vector Markup Language ) són estàndards per crear imatges vectorials que aprofitin els documents formatats en XML. També s’utilitza per descriure imatges bidimensionals, estàtiques i dinàmiques. Llegint les instruccions contingudes en el document font XML, l’intèrpret dibuixa les xifres bàsiques fins que la imatge es completa.
  • WDDX (Word Data Description Exchange): WDDX és una estructura de contenció de dades amb la mateixa estructura que una base de dades, creada per Allaire avui Macromedia i publicada Open a la WDDX Organization

Llenguatges XML més populars

  • XForms : com el seu nom indica, és un llenguatge creat per crear formularis semblants a HTML dins d’un document XML.
  • SMIL ( llenguatge d’integració multimèdia sincronitzada ): aquest llenguatge definit en XML, s’utilitza per descriure el contingut i gestionar el temps de presentacions multimèdia que poden combinar vídeo, àudio, imatges i text junts.
  • MathML (Mathematical Markup Language): MathML s’utilitza per a la descripció de notacions matemàtiques, procedint a la fixació de la seva estructura i contingut alhora, de manera que es puguin informar i processar al web.
  • X3D (eXtensible 3D): X3D és un llenguatge que permet construir models tridimensionals, ja siguin simples o sofisticats. Les animacions i els mecanismes d'interacció amb l'usuari es poden aplicar als objectes creats d'aquesta manera. Com a llenguatge, es basa en el llenguatge de modelatge de la realitat virtual ( VRML ), adoptat al seu torn com a estàndard internacional el 1997. Per aquest últim, el X3D inclou les capacitats, típiques del llenguatge de marcatge extensible (XML), d’integració amb altres Tecnologies de la World Wide Web, validació de contingut i addició flexible de noves extensions de maquinari si cal. A més, hem d'esmentar els avantatges relacionats amb la lleugeresa del "perfil bàsic" (perfil central: hi ha set perfils, cadascun dels quals agrupa un determinat conjunt de funcions que s'utilitzen habitualment per a diferents propòsits. Això permet als desenvolupadors de navegadors assolir nivells intermedis de X3D, sense necessàriament haver d'implementar tota l'especificació alhora) i navegadors amb components per a una descàrrega més ràpida.
  • XBRL (eXtensible Business Reporting Language): és un llenguatge utilitzat per a la comunicació i l’intercanvi de dades financeres i comptables en format electrònic

XML i pàgines web: XHTML

XHTML és un llenguatge de marques dissenyat per mostrar pàgines web mitjançant un navegador, com HTML, i, en ser XML, respecta la seva semàntica. Per exemple, a XHTML, a diferència de l’HTML tradicional, les etiquetes buides s’han de tancar amb una barra inclinada final (/), els atributs buits s’han d’establir com a vertader o fals , el tancament de les etiquetes s’ha de reflectir (si és una etiqueta i abans de tancar-ne una altra) s'obre, cal tancar primer la segona etiqueta i després la primera), algunes etiquetes i atributs, en comparació amb HTML 4.0, han desaparegut i hi ha una DTD dedicada.

El tipus MIME reservat per a pàgines XHTML és (application / xhtml + xml). Si envieu una pàgina XHTML no vàlida però com a text / html, pot passar que es mostri perquè s’interpreta com a html (amb errors, com ara etiquetes tancades com <br />) només que no respecta l’estàndard i no gaudeix dels seus avantatges, entre els quals destaca la portabilitat en diferents navegadors i clients. [2] L’avantatge real d’una pàgina XHTML és que en ser XML obté tots els seus avantatges, com ara la facilitat de validació i la interpretació programàtica. Les pàgines XHTML solen ser més fàcilment accessibles, atesa la seva semàntica XML.

Nota

  1. ^ Andrea Chiarelli, XML Schema and XML Documents , a HTML.it. Consultat el 16 d'octubre de 2020 .
  2. ^ (EN) S'està enviant XHTML com a text / html Considerat perjudicial

Articles relacionats

Altres projectes

Enllaços externs

Control de l'autoritat LCCN (EN) sh97007825 · GND (DE) 4501553-3 · BNF (FR) cb131774360 (data) · BNE (ES) XX546216 (data)
Internet Portal d'Internet : accediu a les entrades de Viquipèdia relacionades amb Internet