Documente Academic
Documente Profesional
Documente Cultură
Aplicatii web
WSDL-S
1 Introducere
1.1 Interoperabilitate. WSDL. WSDL-S.
Interoperabilitatea repre&inta capacitatea aplicatiilor a'late pe plat'orme di'erite( pe sisteme de operare di'erite si pro)ramate in limba*e di'erite de a interschimba in'ormatii! +a este in)reunata de obicei de probleme precum nepotrivirea codarii caracterelor de la o limba la alta( repre&entarea di'erita a unor tipuri standard ,de e-! pe unele plat'orme tipul int este repre&entat pe " biti( pe alte plat'orme pe .# de biti/ etc! Aceste probleme au 'ost re&olvate prin deci&ia de a 'olosi 01L ,e0teded 1ar2ul Lan)ua)e/ pentru transmisia datelor! Dar 01L 'iind un vocabular 'oarte )eneral( s-a hotarat reali&area unei particulari&ari a acestuia re&ultand S3AP ,Simple 3b*ect Acces Protocol/! Acesta doar impune un set de re)uli de 'ormatare a mesa*ului 01L repre&entand in'ormatia transmisa! Un serviciu web trebuie sa 'ie usor de descris si creat pro)rame client! Pentru aceasta problema ridicata de cei ce de&volta pro)rame client ale serviciilor web s-a )asit o solutie care a constat in de&voltarea unui nou subset 01L denumit WSDL prin care( prin elemente prestabilite( sa se in'orme&e clientul asupra structurilor,obiectelor/ 'olosite de serviciu( asupra metodelor e-puse si asupra modului de accesare a acestora ,parametrii( tipul parametrilor( protocoalele de transport admise( stilul si tipul de codare etc!/! Datorita caracterului 'i- pe care il are acest limba* a 'ost posibila reali&area unor utilitare pentru crearea suportului de comunicare ,necesar unui client pentru a invoca un serviciu web/ doar pe ba&a 'isierului WSDL ce descrie serviciul respectiv! De ce este necesara documentarea serviciului4 Deoarece serviciul este o'erit spre u& 5ntre)ii comunitati Internet ,sau unui subset/! +-ista pro)ramatori care vor sa se 'oloseasca de 'unctionalitatea o'erita de serviciul web in cau&a! Dar sarcina lor este 'oarte di'icila 5n ca&ul lipsei documentatiei re'eritoare la inter'ata o'erita de serviciu si la maparile ce trebuie 'olosite pentru a putea transmite corect obiecte si alte in'ormatii! Din aceasta cau&a au luat nastere mai multe limba*e de documentare a unui serviciu web! Unele dintre ele se a-ea&a pe or)ani&area si accesarea serviciilor( altele pe topo)ra'ia unui serviciu web mai comple- iar altele pur si simplu descriu ce 'ace 'iecare metoda si cum ar trebui apelata! Dintre toate aceste limba*e se remarca( datorita 'olosirii sale pe scara lar)a( limba*ul WSDL ,Web Services Description Lan)ua)e/! Submis pentru aprobare de catre IB1( 1icroso't si altii in septembrie #$$$( acest protocol are ca rol descrierea tehnica elementara a inter'etei serviciului! 3 descriere WSDL pre&inta trei proprietati 'undamentale ale unui serviciu web6
WSDL-S
Universitatea Politehnica Bucuresti Facultatea de Automatica si Calculatoare Ceea ce face serviciul operatiile pe care serviciul le furnizeaza. Cum este accesat serviciul detalii ale formatelor de date si protocoale folosite pentru accesarea operatiilor. Unde este localizat serviciul detalii ale adresei de retea specifice protocolului (un URL). WSDL S este o e!tensie a lim"a#ului WSDL definita prin intermediul $%L Sc&ema si care permite adau'area unor adnotari semantice in cadrul componentelor ce apartin descrierii a"stracte a serviciilor. Utili&area e-plicita a acestor meta-in'ormatii ce au in spate un suport teoretic ,cum sunt ontolo)iile/ va permite ca web-ul sa o'ere servicii de o calitate superioara celor de pina acum!
Universitatea Politehnica Bucuresti Facultatea de Automatica si Calculatoare un mesa* cu <==P->+=( <==P-P3S=( S3AP( sau orice alt protocol pe care un o'ertant de servicii web il suporta! Daca se 'oloseste S3AP( elementul 9messa)e; corespunde incarcaturii utile a unui mesa* S3AP de cerere sau de raspuns! Acesta nu include elementele S3AP 9+nvelope; si 9Fault;! 1esa*ele pot avea orice nume pentru ca WSDL nu de'ineste o conventie de denumire pentru mesa*e! Un element 9messa)e; contine $ sau mai multi 'ii 9part;! Un mesa* de cerere contine toti parametrii in si inout! Un mesa* de raspuns contine toti parametrii out si inout! Fiecare element 9part; trebuie sa aiba un nume si un tip de data care se poate potrivi cu tipurile de date care sunt 'olosite in implementarea serviciului! Port Type Un o'ertant de servicii web ,un nod din retea care este server web/ poate e-pune mai multe servicii web! Un sin)ur serviciu web poate suporta invocarea metodelor sale 'olosind o varietate de protocoale! Formatul datelor schimbate intre client si serviciul web poate depinde depinde de protocolul 'olosit pentru a invoca o metoda! De aceea trebuie sa e-iste o cale de a asocia operatiile cu endpointurile de unde acestea pot 'i accesate! Acest tip de asociere se poate reali&a 'olosind elementul port=:pe! 8 Binding Dupa de'inirea portului lo)ic,port=:pe/( in continuare se de'ineste cum poate un consumator al serviciului web sa se le)e la portul pe care este disponibila operatia >etAccount! Acest lucru implica asocierea unei operatii cu un protocol si asi)urarea oricarei in'ormatii de le)atura speci'ice protocolului! De e-emplu( un element bindin) poate mapa un port t:pe la o inter'ata speci'ica S3AP ?PC utili&and <==P ca protocol de transport si sistemul de codare a datelor S3AP! Pentru a 'ace asta se 'oloseste elementul 9bindin);! 8 Service La s'arsitul 'isierului WSDL se de'inesc endpointurile pentru 'iecare dintre protocoalele care se pot 'olosi pentru a accesa un serviciu web! Pentru a de'ini endpointurile se 'oloseste elementul 9service;!
WSDL-S
3 WSDL-S
3.1 Principii de proiectare
Ideea de la care s-a plecat a 'ost adau)area unor caracteristici semantice serviciilor web care sa reduca ambi)uitatile in ceea ce priveste descrierea elementelor componente si sa permita automati&area unor procese precum descoperirea( apelarea si compunerea serviciilor! +-tensia WSDL-S este construita peste standardul WSDL si permite adnotarea serviciilor Web prin intermediul unor elemente si atribute suplimentare6 adnotari re'eritoare la tipul mesa*elor ,model?e'erence(schema1appin)/ si adnotari re'eritoare la operatii ,model?e'erence( cate)or:( precondition(e''ect/! De WSDL-S *
Universitatea Politehnica Bucuresti Facultatea de Automatica si Calculatoare asemenea( trebuie sa asi)ure un mecanism independent de modelul,limba*ul/ de repre&entare al semanticii si sa permita asocierea de adnotari multiple scrise in di'erite limba*e de repre&entare a semanticii! WSDL-S permite adnotari semantice pentru serviciile Web ale caror tipuri de date sunt descrie prin 01L Schema si asi)ura suportul pentru maparea tipurilor de'inite si ontolo)ii!
WSDL-S
Desi intrarile(iesirile(preconditiile si e'ectele asi)ura in mod traditional semantica unei operatii( o adnotare precum cea din e-emplul de mai sus poate 'i deosebit de utila in ca&ul descoperii serviciilor!
WSDL-S
Bottom Level nnotation6 descriere la nivelul elementelor 'run&a! In acest ca& sunt descrise elementele 'run&a din cadrul tipului comple-! Avanta*ul acestei abordari consta in simplitatea sa! Abordarea presupune e-istenta unui concept corespondent pentru 'iecare element 'run&a! In ca&ul in care nu e-ista un concept corespondent pentru un anumit element nu se speci'ica nimic! De&avanta*ul consta in presupunerea e-istentei unei corespondente "6" intre elementele schemei si conceptele din cadrul unui domeniu,ontolo)ii/! In ca&ul in care asocierile sunt de tipul "6n sau n6" acest mod de descriere poate sa nu 'ie posibil!
+-emplu6
In acest ca& tipul comple- are asociat un concept! Avanta*ul acestei abordari consta in re&olvarea problemei re'eritoare la asocierile de tip "6n sau n6" si posibilitatea asocierii elementelor din cadrul unui tip comple- cu anumite concepte semantice!
WSDL-S
Universitatea Politehnica Bucuresti Facultatea de Automatica si Calculatoare De&avanta*ul consta in comple-itatea acestei abordari! +-emplu6
WSDL-S
Universitatea Politehnica Bucuresti Facultatea de Automatica si Calculatoare )en UDDI! Ast'el utili&atorii pot reduce numarul de servicii canditate in 'unctie de acest criteriu! 3biectivul este asi)urarea unei clasi'icari elementare de nivel inalt a serviciilor( lasand la o parte detaliile re'eritoare la sistemul de )rupare a acestor servicii! +-emplu6 !"ssem#category name$ %&lectronics% ta'onomy(RI$%http#))""".naics.com)% ta'onomy*ode$%++,--.% )/
"
plicatii
Inte)rarea aplicatiilor si a proceselor de business sunt activitati critice pentru or)ani&atiile actuale! In conte-tul arhitecturii orientate pe servicii aceasta se traduce prin provocarile tehnice re'eritoare la descoperirea( reutili&area si compunerea serviciilor! In implementarea arhitecturilor orientate pe servicii( serviciile web repre&inta niste componente esentiale! Pentru descoperirea automata a serviciilor si compunerea rapida a acestora este necesara eliminarea ambi)uitatilor re'eritoare la descrierea serviciilor prin adau)area unor elemente semantice!
WSDL-S
$ %onclu&ii
WSDL-S are la ba&a o abordare simpla si compatibila cu actualul standard WSDL! De asemenea( e-tensia asi)ura independenta 'ata de modelul de repre&entare al semanticii o'erind 'le-ibilitate in ale)erea modelulul de repre&entare,ontolo)iei/ si posibilitatea asocierii mai multor ontolo)ii! Datorita 'aptului ca este o e-tindere a standardului WSDL e'orul de modi'icare al uneltelor de de&voltare e-istente este 'oarte redus!
' (iblio)ra!ie
"! ?! A22ira*u( A! Farell ( A!A! 1iller( 1! Ba)ara*an( A! Sheth( C! @erma D Web Service Semantics -WSDL-S #! World Wide Web Consortium ,www!w.!or)/ D Standardul WSDL-S .! U>A IB1 D =echnical Bote E! Wi2ipedia ,http6FFen!wi2ipedia!or)/ D Web Services Description Lan)ua)e 7! http6FFlsdis!cs!u)a!eduFpro*ectsFWSDL-SFwsdl-s!pd' D WSDL-S
WSDL-S