XML vs SOAP
XML on lyhenne sanoista EXtensible Markup Language. Se on määritelty XML 1.0 -spesifikaatiossa, jonka on kehittänyt W3C (World Wide Web Consortium). XML tarjoaa vakiotavan, joka on myös yksinkertainen, koodata dataa ja tekstiä siten, että sisältö voidaan vaihtaa ajureiden laitteistojen, käyttöjärjestelmien ja sovellusten välillä ilman ihmisten väliintuloa. SOAP (Simple Object Access Protocol) on XML-pohjainen viestintäprotokolla. SOAP on myös W3C:n suositus. SOAPia käytetään kommunikoimaan sovellusten välillä lähettämällä hierontoja niiden kesken Internetin kautta.
Mikä on XML?
XML on merkintäkieli, jota käytetään tiedon ja tekstin siirtämiseen ajurilaitteiston, käyttöjärjestelmien ja sovellusten välillä ilman ihmisen puuttumista. XML tarjoaa tunnisteita, attribuutteja ja elementtirakenteita, joita voidaan käyttää kontekstitietojen tarjoamiseen. Tätä kontekstitietoa voidaan käyttää sisällön merkityksen purkamiseen. Tämä mahdollistaa tehokkaiden hakukoneiden kehittämisen ja tiedon louhinnan. Lisäksi perinteiset relaatiotietokannat sopivat XML-tietoiksi, koska ne voidaan järjestää riveihin ja sarakkeisiin, mutta XML tarjoaa vähemmän tukea datalle, jossa on rikasta sisältöä, kuten ääntä, videota, monimutkaisia asiakirjoja jne. XML-tietokannat tallentavat tiedot jäsennellyssä, hierarkkisessa muodossa. mikä mahdollistaa kyselyjen tehokkaamman käsittelyn. XML-tunnisteita ei ole enn alta määritetty ja käyttäjät voivat määritellä uusia tunnisteita ja dokumenttirakenteita. XML:n avulla luotiin myös uusia Internet-kieliä, kuten RSS, Atom, SOAP ja XHTM.
Mikä on SOAP?
Kuten aiemmin mainittiin, SOAP on XML-pohjainen viestintäprotokolla, jota käytetään viestimään sovellusten välillä lähettämällä viestejä Internetin kautta. Se on sekä alustasta että kielestä riippumaton, joten se mahdollistaa viestinnän eri käyttöjärjestelmissä ja eri ohjelmointikieliä käyttävien sovellusten välillä. W3C suositteli SOAP:ia kesäkuussa 2003. SOAP-sanoma on XML-dokumentti, joka koostuu seuraavista pääkomponenteista: kirjekuori, joka ilmoittaa, että XML-dokumentti on SOAP-sanoma, ja ohjeet sen käsittelyyn, otsikkoelementti, joka sisältää tiettyä otsikkotietoa sovellukseen, kuten tarkistuksen tiedot, runkoelementti, joka sisältää vastaanottajan vastaanottaman varsinaisen viestin, ja valinnainen vikaelementti, joka sisältää virheitä ja tilatietoja. Vaikka SOAPia käytetään pääasiassa HTTP:n kanssa siirtoprotokollana, sitä voidaan käyttää muiden protokollien (esim. JMS, SMTP) kanssa. SOAP voi mennä palomuurien ja välityspalvelinten läpi, koska se toimii HTTP:n kanssa.
Mitä eroa on XML:llä ja SOAP:lla?
XML on merkintäkieli, jota käytetään tiedon siirtämiseen ajureiden laitteistojen, käyttöjärjestelmien ja sovellusten välillä ilman ihmisen puuttumista, kun taas SOAP on XML-protokolla, jota käytetään sovellusten väliseen viestintään Internetin kautta. XML – RPC:tä (XML – Remote Procedure Calls) voidaan käyttää myös sovellusten väliseen kommunikointiin tekemällä prosessikutsuja Internetin kautta. Mutta XML – RPC ei voi käsitellä monimutkaisia käyttäjän määrittämiä tietotyyppejä, kuten SOAP. Lisäksi SOAP pystyy antamaan ohjeita viestin käsittelyyn, mitä ei voi tehdä XML:ssä – RPC.