Forskjellen mellom XML og SOAP

XML vs SOAP

XML står for Eksternt Markup Language. Det er definert i XML 1.0 spesifikasjonen, som er utviklet av W3C (World Wide Web Consortium). XML gir en standard måte, som også er enkel, for å kode data og tekst slik at innholdet kan utveksles på tvers av driverens maskinvare, operativsystemer og applikasjoner med lite menneskelig innblanding. SOAP (Simple Object Access Protocol) er en kommunikasjonsprotokoll basert på XML. SOAP er også en W3C-anbefaling. SOAP brukes til å kommunisere mellom applikasjoner ved å sende massasje blant dem via internett.

Hva er XML?

XML er et oppslagsspråk som brukes til å overføre data og tekst mellom driverens maskinvare, operativsystemer og applikasjoner med lite menneskelig inngrep. XML gir koder, attributter og elementstrukturer som kan brukes til å gi kontekstinformasjon. Denne kontekstinformasjonen kan brukes til å dekode innholdets betydning. Dette gjør det mulig å utvikle effektive søkemotorer og utføre datautvinning på dataene. Videre er tradisjonelle relasjonsdatabaser egnet som XML-data fordi de kunne organiseres i rader og kolonner, men XML gir mindre støtte for data med rikt innhold som lyd, video, komplekse dokumenter, etc. XML-databaser lagrer data i en strukturert, hierarkisk form som gjør at forespørsler kan behandles mer effektivt. XML-koder er ikke forhåndsdefinert, og brukerne kan definere nye koder og dokumentstrukturer. Også nye nett språk som RSS, Atom, SOAP og XHTM ble opprettet ved hjelp av XML.

Hva er SOAP?

Som tidligere nevnt er SOAP en kommunikasjonsprotokoll basert på XML, som brukes til å kommunisere mellom applikasjoner ved å sende meldinger via internett. Det er både plattform og språk uavhengig, og tillater derfor å kommunisere mellom programmer som kjører på forskjellige operativsystemer og ved hjelp av forskjellige programmeringsspråk. W3C anbefalte SOAP i juni 2003. En SOAP-melding er et XML-dokument som består av følgende hovedkomponenter: En konvolutt som informerer om at XML-dokumentet er en SOAP-melding og instruksjonene for å behandle den, et Header-element som inneholder headerinformasjon som er spesifikk til applikasjonen slik som detaljer om autentisering, et kroppselement som holder den faktiske meldingen mottatt av mottakeren og et valgfritt feilelement som inneholder feil og statusinformasjon. Selv om SOAP hovedsakelig brukes med HTTP som transportprotokoll, kan den brukes med andre protokoller (for eksempel JMS, SMTP). SOAP kan gå gjennom brannmurer og proxyer siden det kan fungere med HTTP.

Hva er forskjellen mellom XML og SOAP?

XML er et oppslagsspråk som brukes til å overføre data mellom driverens maskinvare, operativsystemer og applikasjoner med lite menneskelig inngrep, mens SOAP er en protokoll basert på XML som brukes til å kommunisere mellom applikasjoner via Internett. XML - RPC (XML - Remote Procedure Calls) kan også brukes til å kommunisere mellom applikasjoner ved å gjøre prosedyreanrop via Internett. Men XML-RPC kan ikke håndtere komplekse brukerdefinerte datatyper som SOAP. Videre har SOAP muligheten til å gi instruksjoner om hvordan man behandler meldingen, som ikke kan gjøres i XML-RPC.