1 / 11

Programowanie XML

Programowanie XML. XML w aplikacjach. Odczyt zawartości dokumentów XML Modyfikacja i zapis dokumentów Walidacja dokumentu podczas parsowania przed zapisaniem Wsparcie dla innych standardów związanych z XML: XSLT XQuery, XPath XML w technologiach programistycznych: Web Services AJAX.

hamlin
Download Presentation

Programowanie XML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programowanie XML

  2. XML w aplikacjach • Odczyt zawartości dokumentów XML • Modyfikacja i zapis dokumentów • Walidacja dokumentu podczas parsowania przed zapisaniem • Wsparcie dla innych standardów związanych z XML: • XSLT • XQuery, XPath • XML w technologiach programistycznych: • Web Services • AJAX

  3. Modele dostępu do dokumentu • Pozwalają programistom na dostęp do zawartości dokumentów XML na wysokim poziomie • abstrakcyjne obiekty • wbudowana analiza leksykalna i składniowa • Abstrakcyjne, zestandaryzowane modele pozwalają na • jednolity sposób programowania, niezależnie od użytej implementacji • wykorzystanie parsera • Podstawowym składnikiem implementacji każdego modelu jest parser • analizuje dokument XML i udostępnia jego zawartość w postaci abstrakcyjnego modelu • dokonuje analizy leksykalnej i składniowej • sprawdza poprawność strukturalną

  4. Klasyfikacja najpopularniejszych modeli programistycznych • Dokument w całości wczytywany do pamięci: • uniwersalny interfejs programistyczny - przykład: DOM • interfejs zależny od typu dokumentu - przykład: JAXB • Dokument przetwarzany węzeł po węźle: • model zdarzeniowy - przykład: SAX • przetwarzanie strumieniowe - przykład: SJSXP

  5. Reprezentacja dokumentu w pamięci • Dokument jest reprezentowany przez drzewiastą strukturę danych • Cechy charakterystyczne • cały dokument wczytany do pamięci • jeden zestaw typów(klas) i funkcji(metod) dla wszystkich dokumentów • Możliwe operacje • wczytanie dokumentu do pamięci • zapis dokumentu • chodzenie do drzewie dokumentu, odczyt wartości • dowolna modyfikacja struktury i wartości • tworzenie nowych dokumentów

  6. Document Object Model (DOM) • Rekomendacja W3C • Standard niezależny od języka programowania • Teoretyczny model dokumentu + interfejs programistyczny (IDL) • Części składowe • podstawowe metody dostępu do struktury dokumentu • przestrzenie nazw • widoki dokumentu po zastosowaniu stylów CSS • obsługa zdarzeń • manipulowanie arkuszami stylów, • przechodzenie po dokumencie XML

  7. Node Document Element Comment ProcessingInstruction Attr Text CDATA Section DOM - najważniejsze elementy

  8. Manipulacja zawartością appendChild(Node) insertBefore(Node, Node) removeChild(Node) replaceChild(Node, Node) setNodeValue(String) setNodeName(String) Klonowanie cloneNode(boolean) ElementNode Dostęp do zawartości • getAttributes() • getChildNodes() • getFirstChild() • getLastChild() • getNextSibling() • getPreviousSibling() • getNodeName() • getNodeValue() • getNodeType() • getOwnerDocument() • getParentNode() • hasChildNodes()

  9. SAX – Simple API for XML • Standard dla języków obiektowych, • Wzorcowe interfejsy zapisane w Javie. • Status: • obsługa przestrzeni nazw • cechy - wartości boolowskie • właściwości - dowolne obiekty • dostęp do zdarzeń leksykalnych

  10. Interfejsy SAX w Javie • Interfejsy implementowane przez parser: • XMLReader • parse • setContentHandler • Attributes • getLength • getLocalNamegetQName • getValue • Opcjonalny: Locator Interfejsy implementowane przez użytkownika parsera: • ContentHandler • characters ignorableWhitespace • startDocument, endDocument • startElement, endElement • processingInstruction • setDocumentLocator • ErrorHandler • DTDHandler, EntityResolver

  11. Parsery XML • Xerces • SAX, DOM • Java, C++, Perl, jako komponent COM • Oracle XML • różne modele dostępu, m.in. SAX, DOM, XPath • Java, C, C++, PL/SQL • Microsoft XML Core Servises (MSXML 6.0) • SAX, DOM, Schema Object Model • komponent COM - można korzystać m.in. w: C++, VB, Java, Perl, Python, JavaScript, ECMAScript, VBScript. • XML w .NET • SAX, DOM, XPath, pełne parsowanie

More Related