XML vs SOAP
XML sta per EXtensible Markup Language. È definito nella specifica XML 1.0, sviluppata dal W3C (World Wide Web Consortium). XML fornisce un modo standard, che è anche semplice, di codificare dati e testo in modo tale che il contenuto possa essere scambiato su hardware, sistemi operativi e applicazioni del driver con scarso intervento umano. SOAP (Simple Object Access Protocol) è un protocollo di comunicazione basato su XML. SOAP è anche una raccomandazione W3C. SOAP viene utilizzato per comunicare tra le applicazioni inviando massaggi tra di loro tramite Internet.
Cos'è XML?
XML è un linguaggio di markup che viene utilizzato per trasferire dati e testo tra hardware del driver, sistemi operativi e applicazioni con scarso intervento umano. XML fornisce tag, attributi e strutture di elementi che possono essere utilizzati per fornire informazioni contestuali. Queste informazioni di contesto possono essere utilizzate per decodificare il significato del contenuto. Ciò rende possibile lo sviluppo di motori di ricerca efficienti e l'esecuzione di data mining sui dati. Inoltre, i database relazionali tradizionali sono adatti come dati XML perché possono essere organizzati in righe e colonne, ma XML fornisce meno supporto per i dati con contenuti multimediali quali audio, video, documenti complessi, ecc. I database XML memorizzano i dati in una forma gerarchica strutturata che consente alle query di essere elaborate in modo più efficiente. I tag XML non sono predefiniti e gli utenti possono definire nuovi tag e strutture di documenti. Inoltre, nuovi linguaggi internet come RSS, Atom, SOAP e XHTM sono stati creati usando XML.
Cos'è SOAP?
Come accennato in precedenza, SOAP è un protocollo di comunicazione basato su XML, che viene utilizzato per comunicare tra le applicazioni inviando messaggi tramite Internet. È indipendente dalla lingua e dalla piattaforma e consente quindi di comunicare tra applicazioni in esecuzione su diversi sistemi operativi e utilizzando diversi linguaggi di programmazione. W3C ha consigliato SOAP nel giugno 2003. Un messaggio SOAP è un documento XML composto dai seguenti componenti principali: una busta che notifica che il documento XML è un messaggio SOAP e le istruzioni per elaborarlo, un elemento Intestazione contenente informazioni sull'intestazione che è specifico all'applicazione come dettagli sull'autenticazione, un elemento del corpo che contiene il messaggio effettivo ricevuto dal ricevitore e un elemento di errore opzionale contenente errori e informazioni sullo stato. Anche se SOAP viene utilizzato principalmente con HTTP come protocollo di trasporto, potrebbe essere utilizzato con altri protocolli (ad esempio JMS, SMTP). SOAP può passare attraverso firewall e proxy poiché può funzionare con HTTP.
Qual è la differenza tra XML e SOAP?
XML è un linguaggio di markup che viene utilizzato per trasferire dati tra hardware del driver, sistemi operativi e applicazioni con scarso intervento umano, mentre SOAP è un protocollo basato su XML che viene utilizzato per comunicare tra le applicazioni tramite Internet. XML - RPC (XML - Remote Procedure Calls) può anche essere utilizzato per comunicare tra le applicazioni effettuando chiamate di procedura su Internet. Ma XML - RPC non può gestire tipi di dati definiti dall'utente complessi come SOAP. Inoltre, SOAP ha la capacità di fornire istruzioni su come elaborare il messaggio, cosa che non può essere eseguita in XML - RPC.