API-ul simplu pentru XML sau SAX este o interfață de programare pentru multe limbi pentru citirea și procesarea documentelor XML .
API-ul SAX este inițial specific limbajului de programare Java, care îl folosește pentru a citi o parte sau întregul document XML. Ulterior, ar putea fi adoptat de majoritatea limbajelor de programare actuale.
API-ul SAX este dezvoltat pentru prima dată de dezvoltatorul David Megginson înIanuarie 1998. El a publicat în lista de corespondență xml-dev prima versiune a acestui API, SAX 1.0, care a primit un feedback bun din partea membrilor acestui grup de discuții și un răspuns bun din partea producătorilor dezvoltatorilor de IT și software. De atunci, API-ul SAX a evoluat în afara dezvoltatorului său inițial și suntem acum la versiunea SAX 2.0 care a fost disponibilă din 2004.
Metodele SAX și DOM adoptă fiecare o strategie foarte diferită pentru analiza sintaxei documentelor XML, deci sunt utilizate în contexte diferite. DOM încarcă un întreg document XML într-o structură de date, care poate fi apoi manipulat și apoi convertit înapoi în XML. Cu toate acestea, pentru aceasta, dimensiunea structurii care reprezintă documentul XML nu trebuie să fie mai mare (sau nu prea mare) decât ceea ce poate conține memoria RAM . Metoda SAX oferă apoi o alternativă în cazurile în care documentele XML sunt de dimensiuni foarte mari (vorbim apoi de adaptare la volumul de date, în scalabilitate în limba engleză ).
SAX prelucrează documentele, articol cu articol, pe măsură ce sunt întâlnite. Pentru fiecare element (etichetă, comentariu, text), se apelează funcția de apel invers corespunzătoare. Acesta este motivul pentru care acest mod de interpretare a documentelor XML utilizează mai puțină memorie, deoarece SAX nu acumulează date într-o structură. Cu toate acestea, programatorul poate colecta foarte bine datele care îl interesează în structurile la alegere sau poate efectua în mod direct operațiuni corespunzătoare elementelor întâlnite în document.