web - xml databases

52
Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/ Tehnologii Tehnologii Web Web <?xml version=“1.0” ?> <curs desc=“…” /> Tehnologii Web Dr. SabinCorneliu Buraga Facultatea de Informatica Universitatea “A.I.Cuza” – Iasi, Romania http://www.infoiasi.ro/~busaco/

Upload: sabin-buraga

Post on 28-Nov-2014

1.815 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Tehnologii Web

Dr. Sabin­Corneliu BuragaFacultatea de Informatica

Universitatea “A.I.Cuza” – Iasi, Romania

http://www.infoiasi.ro/~busaco/

Page 2: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Marcarea datelor pentru <Web />

Baze de date native XMLLimbajul de interogare XQuery

Detalii in [TX, 153‐177]

Page 3: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Interogarea datelor XMLIntroducere

Stocarea datelor XMLDefinitii

Limbajul XQuerySisteme de manipulare a informatiilor XML

cuprins

Page 4: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

In sens strict, un document XMLeste o baza (colectie) de date

viziune centrata spre documente (document centric)

intro

Page 5: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Pentru managementul datelor XML,trebuie sa existe suport pentru: stocare (documente/arbori XML)

scheme (DTD, scheme XML, RELAX NG etc.)limbaje de interogare (XPath, XSLT, XQuery,...)

procesare – via API‐uri (SAX, DOM,...)

intro

Page 6: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Mai trebuie asigurate: stocarea eficientamecanismele de indexaresecuritatea datelortranzactiileintegritatea dateloraccesul concurentmulti­usertrigger‐eleinterogarile rapide in documente multiple...

intro

Page 7: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Maniere:documente centrate pe date(data­centric documents)

viziunea centrata pe documente(document­centric documents)

stocarea datelor XML

Page 8: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Documente centrate pe date: XML folosit pentru transportul datelorDocumente XML proiectate pentru a fi eficientprocesate de calculator: structura regulata, reprezentari fine ale datelor

Exemple: orare de curse aeriene, date stiintifice, ordine de plata

Caracter structurat al datelor stocare in baze de date relationale + interschimb de date

stocarea datelor XML

Page 9: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Viziunea centrata pe documente: XML utilizat pentru date destinate oamenilorExemple: carti electronice, mesaje e­mail, documente XHTML

Caracter semi­structurat al datelor(structura interna nu este atit de regulata)

Ordinea aparitiei unor elemente situate pe acelasi nivel (siblings) este, uzual, importanta

Documentele sunt concepute manual sau provin din alte formate, fara a fi stocate in baze de date clasice

stocarea datelor XML

Page 10: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Practic, cele doua categorii nu pot fi distinseintotdeauna clar

stocarea datelor XML

avansatavansat

Page 11: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Datele se stocheaza in baze de date relationale, orientate‐obiect ori ierarhice

Datele pot fi accesate in format XML via sisteme XML­enabledSchema DB ↔ schema XMLAdoptarea unui model obiect‐relationalXML binding

Documentele (nu datele) sint stocatein baze de date native XML ori in sistemede management al continutului (CMS‐uri)

stocarea datelor XML

avansatavansat

Modelul RHOX(Relational, 

Hypertext, Object,XML)

Page 12: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Baze de date native XML ≡ baze de date proiectatespecial pentru a stoca documente XML

unitatea fundamentala de stocare (logica)este documentul XML (si nu inregistrarea – record)

nu necesita folosirea unui sistem de stocare fizica

“definitii”

Page 13: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Baze de date native XML

arhitectura interna poate fi bazate petext (fisier, cimp BLOB/CLOB) sau model (arbore DOM)

utilizate pentru stocarea informatiilor centratepe documente si pentru managementul datelor

semi‐structurate

“definitii”

Page 14: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

NormalizareaDependente functionaleRedundanta & anomaliilecauzate de actualizarile datelor XML

Integritatea referentialaID, IDREF, key & keyref (XML Schema), XLink

ScalabilitateaOperatiile sa aiba loc in termen rezonabilsi pentru documente XML de mari dimensiuni

aspecte importante

Page 15: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Utilizarea colectiilor de documentecolectie ≡ tabela (la modelul relational)ori director (la sistemul de fisiere)

Recurgerea la limbaje de interogare

Suport pentru tranzactii, locking, concurenta

Folosirea de API‐uri

facilitati

Page 16: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Optimizarea accesului (round­tripping)

Accesul la date la distanta (remote data)

Suportul pentru indexare(value/structural/full­text indexes)

facilitati

Page 17: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

RDBMS vs. XMLDBS

BazeBaze de date de date relationalerelationale BazeBaze de date native XMLde date native XML

O O bazabaza de date de date relationalarelationalacontinecontine tabeletabele

O O bazabaza de date XML de date XML continecontine colectiicolectii

O O bazabaza de date de date relationalarelationalacontinecontine inregistrariinregistrari avindavindaceeasiaceeasi schemaschema

O O colectiecolectie continecontine documentedocumenteXML XML avindavind scheme scheme identiceidentice orioridiferitediferite

O O inregistrareinregistrare reprezintareprezinta oo listalistaneordonataneordonata de de valorivalori ideniden‐‐tificatetificate prinprin numenume sisi avindavind tipuritipuriaa­­prioripriori stabilitestabilite

Un document XML Un document XML reprezintareprezintaun un arborearbore de de nodurinoduri, , cece poatepoateinclude date semiinclude date semi‐‐structuratestructurate

O O interogareinterogare intoarceintoarce un setun setneordonatneordonat de de inregistrariinregistrari

O O interogareinterogare intoarceintoarce o seco sec‐‐ventaventa ordonataordonata de de nodurinoduri

Page 18: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Scop #1Dezvoltarea unor limbaje de interogare

a continutului XML

interogare

Page 19: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Necesitati:Obtinerea rezultatelor in format XMLSuportul pentru procesare pe partea de serverRealizarea de operatii complexe(selectii, extractii, reductii, restructurari,...)

Suportul pentru alte standarde XML (XPath, spatii de nume, XML Schema etc.)

Suportul pentru noi tipuri de date

interogare

Page 20: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Precursori: WebSQL, XML‐QL, XML‐GL, XQL, UnQL, XMAS,... 

Standarde: XPath 1.0/2.0: 

www.w3.org/TR/xpath-datamodel/ XSLT 1.0/2.0: www.w3.org/TR/xslt20/XQuery 1.0: www.w3.org/TR/xqueryXQueryX: www.w3.org/TR/xqueryx

interogare

Page 21: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Model:document XML ≡ arbore compus din noduri

(conform XPath 2.0 + XSLT 2.0)

Documentul XML interogat poate avea asociatao schema (optionala)

interogare: xquery

Page 22: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

O valoare (value) ≡ secventa de nodurisau de valori atomice

O secventa de noduri este ordonata, de obiceiin ordinea aparitiei acestora in document

Valorile atomice sunt cele tipice (vezi XML Schema)

interogare: xquery

Page 23: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Spatii de nume ce pot fi folosite:xs (schema XML) http://www.w3.org/2001/XMLSchemaxsi (instanta de schema XML) 

http://www.w3.org/2001/XMLSchema-instancexdt (tipuri de date XPath 2.0)

http://www.w3.org/2003/xpath-datatypeslocal (functii XQuery locale) 

http://www.w3.org/2003/11/xquery-local-functionsxml (XML)

http://www.w3.org/XML/1998/namespace

interogare: xquery

Page 24: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Pentru selectarea nodurilor, se foloseste XPathOrice expresie XPath reprezinta un program XQueryRezultatul unui program XQuery este o padure(secventa de arbori XML)

Ca la XSLT, interogarile pot fi incluse in sabloanecare sa genereze rezultatul dorit

<proiecte>{ /projects/project/* }</proiecte>

interogare: xquery

Program XQueryce contine o expresie

XQuery

Page 25: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

O expresie de forma $nume este o referintala variabila nume

Variabilele pot fi folosite(si) in cadrul expresiilor XPath

Variabilele pot contine valori sau rezultateale expresiilor FLOWR

(For­Let­Order­Where­Result)

interogare: xquery

Page 26: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

for serveste la atasarea de valori unor variabile, in maniera iterativa (se permit si join‐uri)

let asigneaza valoarea unei expresii unei variabilewhere permite formularea de conditii (filtrari de date) asociate unei constructii for

order by specifica ordinea de selectare a valorilorreturn intoarce rezultatul unei expresii XQuery, putind include sabloane, expresii XPath, sub‐expresii FLOWR imbricate

interogare: xquery – expresii

Page 27: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Exemplu

for $stud in doc("students.xml")//student where $stud/year = 2 return $stud/name

echivalent cu fraza SQL 

select stud.name from students stud where stud.year = 2

interogare: xquery – expresii

Page 28: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Se poate recurge la facilitatile XPath 2.0:cuantificatori (all si some), 

expresii conditionale (if...then...else), operatori (cei de la XPath 2.0 + suplimentari), functii (predefinite ori scrise de utilizator)

Nu sunt acceptate toate axele XPath

interogare: xquery – expresii

Page 29: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Pot fi declarate tipuri de date(cele oferite de XML Schema)pentru valorile intoarse

for $contor as xs:integer in 1 to 5return $contor * 3

interogare: xquery – expresii

Page 30: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Erori & depanare: error(), trace()Accesori de date: node-name(), string(), data()Numerice: abs(), ceiling(), round(), count(), avg(),

max(), min(), sum(),...Siruri de caractere: compare(), concat(), string-join(),

substring(), string-length(), upper-case(), translate(),escape-uri(), contains(), starts-with(), ends-with(),substring-before(), substring-after(),...

Expresii regulate: matches(), replace(), tokenize()

interogare: xquery – functii uzuale

Page 31: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Data & timp: duration-equal(), time-less-than()...Noduri: name(), local-name(), namespace-uri(), root()Secvente: zero-or-one(), one-or-more(), exactly-one(), index-of(), 

empty(), exists(), distinct-values(), remove(), insert-before(), reverse(), unordered(), deep-equal(),...

Context: position(), last(), current-dateTime(),...Generare de secvente: doc(), collection()

Detalii la http://www.w3.org/TR/xpath-functions/ Pot fi folosite si functii externe

interogare: xquery – functii uzuale

Page 32: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

for $proj in doc ("http://www.infoiasi.ro/projects.xml")/projects/*

where some $projid in $proj/@idsatisfies ($projid = $stud/project)

return<project class="{ $proj/@class }">

{ $proj/title }{ $proj/desc }

</project>

interogare: xquery – exemple

Generareaaltei structuri

XML

Page 33: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

(: Listeaza ca document XHTML toti studentiiale caror nume contin 'Ping' si se termina cu 'uin‘ :)

<div style="font-size: 14pt">{for $stud in doc ("students.xml")//studentlet $e := $stud/name[ contains (string (.), "Ping")

and ends-with (string (.), "uin") ]where exists ($e)return<p><em> { $stud/name/text() } </em> cu proiectul<span style="color: blue"> { $stud/project/text() } </span></p>

}</div>

interogare: xquery – exemple

Page 34: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Modularizare via fisiere‐modul (.xqm) si functii‐utilizator

module namespace utils="http://urn:infoiasi.ro:xdb-utils";(: Declara o secventa de nume de luni :)declare variable $utils:months { ("Ian", "Feb", "Mar", "Apr", "Mai", "Iun",

"Iul", "Aug", "Sep", "Oct", "Nov", "Dec")};(: Transforma data in forma dd Mmm yyyy :)declare function utils:format-date-RO ($date as xs:dateTime)

as xs:string {string-join ((

day-from-date ($date),item-at ($utils:months, month-from-date ($date)),

year-from-date ($date)), " ")};

interogare: xquery – exemple

Page 35: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Utilizarea functiei definite anterior:

import module namespaceutils="http://urn:infoiasi.ro:xdb-utils";

declare variable $data external; <data>{ utils:format-date-RO ($data) } </data>

interogare: xquery – exemple

Page 36: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

(: Autentificare prin nume de cont & parola preluatedin sesiunea HTTP curenta; intoarce o pereche(user, password) sau o secventa vida in caz de esec :)

declare function main:checkUser() as xs:string* {let $user := request:get-session-attribute ("user"),

$pass := request:get-session-attribute ("password"),$login := xdb:authenticate ("xmldb:exist:///db",

$user, $pass)return

if ($login) then($user, $pass)

else()

};

interogare: xquery – exemple

Se folosesc functiiexterne – aici, oferitede serverul eXist

Page 37: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Limbajul XQuery in varianta actuala nu oferasuport pentru actualizarea datelor XML

(operatii CRUD)

XUpdate – in curs de standardizare,dar suportat deja de o serie de aplicatii

Viitoarele versiuni ale XQuery vor includesi posibilitati de actualizare a datelor

interogare: alte limbaje

Page 38: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Pentru tipuri particulare de documente,pot fi folosite limbaje de interogare speciale

exemplu: SPARQL pentru RDF

interogare: alte limbaje

Page 39: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

SPARQLStandard W3C: 

www.w3.org/TR/rdf­sparql­query/

Inspirat din RDQL (oferit de Jena, RAP, Redland etc.)

Limbaj descriptiv pentru realizarea de interogari pe baza potrivirilor de sabloane referitoare la triple RDF

interogare: alte limbaje

Page 40: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

SPARQLUn sablon specifica variabile indicind date ce vor fi 

returnate in urma realizarii interogarii: ?subiect ?predicat ?obiect .

Exemplu: lista persoanelor inter‐conectate via foaf:knows se obtine cu: 

?persoana foaf:knows ?alta_persoana .

Sabloanele pot fi combinate pentru a forma sabloane mai complexe sabloane de tip graf (graph patterns)

interogare: alte limbaje

Page 41: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

PREFIX foaf: <http://xmlns.com/foaf/0.1/>PREFIX s: <http://infoiasi.ro/varste#>SELECT ?nume ?adresa ?aniWHERE {?pers foaf:name ?nume .?pers s:ani ?ani . FILTER (?ani < 33) .

OPTIONAL { ?pers foaf:mbox ?adresa . }}ORDER BY ?ani DESC (?nume)LIMIT 10

interogare: alte limbaje

Optional, se ofera si adresa de e­mail

Informatii despre primele 10 persoane cu virsta < 33(extrase dintr‐un document FOAF)

Page 42: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Instrumente, aplicatii & implementari (exemple):Editare & depanare: <oXygen />, Stylus StudioSuport pentru baze de date native XML: Berkeley DB XML, eXist, Mark Logic’s CIS, Sedna

Sisteme relationale XML­enabled: Oracle, MS SQL Server

API‐uri – e.g., Saxon (Java, .NET),XML::XQuery (modul Perl), XQuery API for Java (XQJ) – JSR 225

interogare: implementari

Page 43: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Scop #2:Implementarea unor sisteme de management

al informatiilor XML

manipulare

Page 44: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Middleware:DB2XML, DBIx::XML, XDBC (XML DataBase Connectivity)

Sisteme de baze de date native XML:Berkeley DB XML, DBDOM, eXist, Tamino, XDB, Xindice,...

Servere (suportind) XML:AxKit, Enhydra, WebObjects

Servere XML­enabled: DB2 Information Integrator, MS SQL, Oracle,…

manipulare

Page 45: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Motoare de interogare XML

Conectoare (XML data binding)

Sisteme de management al continutului:Docato, Dynabase, Frontier, iENGINE, Mark Logic’s CIS, 

Prowler, Syncato, UltraXML,...

API‐uri: Persistent DOM (PDOM), XML:DB, XQJ

manipulare

Page 46: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Integrarea datelor semi‐structurate:date privitoare la afaceri

“Get a coherent view of the mess in the back office”(Michael Champion)

analiza cererilor de plata

productia de stiri (online)

date financiare

manipulare: utilizari

Page 47: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Integrarea datelor semi‐structurate:informatii privitoare la transport (aerian)

industrii: medicala, de divertisment,...

suportul acordat clientilor(in contextul CRM – Client Relationship Management)

informatii din domeniul legal

manipulare: utilizari

Page 48: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Necesitatea suportului pentru tranzactiistocare

cozi de mesajearhive

meta‐datedepozite

manipulare: utilizari

Page 49: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Elsevier Sciencepeste 2 TB de informatii

>5 mil. articole, >60 mil. referinte + rezumate,>1000 carti,...Mark Logic’s CIS

Oxford University Pressplatforma online de publicare,

continutul stocat in format XML, facilitati de cautareMark Logic’s CIS

manipulare: exemple

Page 50: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Autodeskmanuale (HTML, PDF, CHM,...) in >30 de limbi

X‐Hive/DB

Las Vegas Sun>10 GB (peste 750000 doc. XML, imagini si doc. PDF)

FDX XML Server

US Navypeste 100 mii volume tehnice

Tamino

manipulare: exemple

Page 51: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Interogarea datelor XMLIntroducere

Stocarea datelor XMLDefinitii

Limbajul XQuerySisteme de manipulare a informatiilor XML

rezumat

Page 52: Web - XML databases

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

??