TIN Techniki Internetowe zima
|
|
- Tadeusz Zieliński
- 9 lat temu
- Przeglądów:
Transkrypt
1 TIN Techniki Internetowe zima Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej
2 Plan wykładów 2 Intersieć, ISO/OSI, protokoły sieciowe, IP 3 Protokół IP i prot. transportowe: UDP, TCP 4 Model klient-serwer, techniki progr. serwisów 5 Protokoły aplikacyjne: telnet, ftp, smtp, nntp, inne 6 HTTP 7 HTML i okolice 8 XML 9, 10, 11 Aplikacje WWW, CGI, sesje, serwery aplikacji serwlety, integracja z backended SQL 12 Aspekty zaawansowane: wydajność, przenośność, skalowalność; klastering 13 SOAP
3 XML
4 XML Co jest nie tak z HTML? (przypomnienie): HTML opisuje wyłącznie formatowanie tj. sposób prezentacji dokumentu Meta-informacja nie jest w żaden sposób wyrażana w HTML HTML nie wyraża i nie opisuje też semantyki (znaczenia informacji) w HTML nie ma oddzielenia znaczenia tekstu i sposobu jego prezentacji Czego nie da się zrealizować w HTML? (przykłady): Jednoznaczego opisu dokumentów co oznacza tytuł? Wyszukiwania dokumentów np. wg. tytułu, autora lub innych atrybutów znaczeniowych W konsekwencji np. wymiany danych między aplikacjami
5 XML - pierwszy przykład <bibliography> <book ID= "MiM"> <authors> <author>bułhakow Michał</author > <translator>i. Lewandowska </translator> </authors > <title> Mistrz i Małgorzata </title > <publisher>czytelnik</publisher > <year>1992</ year> </ book >... </bibliography >
6 XML - pierwszy przykład <bibliography> Nazwa elementu ELEMENT... <book ID= "MiM"> <authors> <author>bułhakow Michał</author > <translator>i. Lewandowska </translator> </authors > <title> Mistrz i Małgorzata </title > <publisher>czytelnik</publisher > <classification type="fiction"/> <year>1992</ year> </ book > </bibliography > Pusty element Wartość atrybutu Nazwa atrybutu
7 XML - drzewo book bibliography book... XML może też reprezentować: relacyjne bazy danych authors title struktury obiektowe author Bułhakow translator Lewandowska Dokument XML może być przekształcony w drzewo obrazujące hierarchiczne zależności elementów... Mistrz i Małgorzata <bibliography> <book ID= "MiM"> <authors> <author>bułhakow Michał</author > <translator>i. Lewandowska </translator> </authors > <title> Mistrz i Małgorzata </title > <publisher>czytelnik</publisher > <classification type="fiction"/> <year>1992</year> </ book > </bibliography >
8 XML i inne notacje tekstowe XML porządkuje systemy reprezentacji danych w Internecie (i nie tylko) W sensie czysto teoretycznym XML nie wnosi wiele nowego - koncepcje stosowane w XML znane są od co najmniej lat: XML w LISP: (books (book (author Bułhakow ) (title Mistrz i Małgorzata ) (citation (line W białym płaszczu z ) (line ) )))
9 XML - Zalety Może być tworzony przy pomocy najprostszych narzędzi tekstowych Prosty w automatycznej analizie (prosty parser) Dokument zawiera "w sobie" drzewo rozbioru składniowego (parse tree) Dokument może zawierać bezpośrednio w swojej treści opis schematu danych (DTD) Pozwala na całkowitą separację treści od prezentacji (XML+XSL(T)) Jest niezależny od systemów operacyjnych, konkretnego oprogramowania, itd.
10 Definicja struktury dok. XML Co to znaczy "zdefiniujemy strukturę"? Określimy zestaw dopuszczalnych: elementów, atrybutów, itd. zdefiniujemy dopuszczalne zawartości elementów (np.: tekst, inne), przypiszemy atrybuty do elementów Jak zdefiniujemy strukturę? dokument XML bez określonej struktury - dobre do prostych "nie publicznych" zastosowań, DTD Document Type Definition, XML Schema Inne, np.: Relax NG, Schematron, ISO DSDL
11 Poprawność składni XML Koniec ze złymi nawykami (z HTML-a)! Dokument musi być poprawny syntaktycznie - składniowo ("well-formed"): wartości atrybutów ujęte w apostrofy lub cudzysłowy Niepusty element musi mieć znacznik otwierający i zamykający Znaczniki muszą być poprawnie zagnieżdżone (nie ma nakładających się elementów) Dokument musi być poprawny strukturalnie - semantycznie: struktura dokumentu zgodna ze strukturą zdefiniowaną w definicji typu dokumentu, w odpowiednich elementach obecne wszystkie wymagane atrybuty.
12 Składnia XML Znaki: Unicode Deklaracja XML: <?xml version="1.0" encoding="iso " standalone="no"?> Znaczniki: <tag attributename="attribute-value"> </tag> Znacznik elementu pustego: <br> </br> -> <br/>
13 DTD XML - gramatyka XML DTD: bezkontekstowa (CFG) <!ELEMENT bibliography book*> <!ELEMENT book (authors,classification?,title)> <!ELEMENT authors author+> <!ELEMENT ElementName ContentModel> Gramatyka CFG bibliography book authors book* authors,classification?,title author+ lhs = element (name) rhs = wyr. reg. złożone z elementów + stringów (PCDATA)
14 DTD - Document Type Definition Definicja nazw elementów i struktury: Sekwencja 0 lub więcej Dekl. typu elementu Sekwencja 1 lub więcej <!ELEMENT bibliography book*> <!ELEMENT book (authors, classification?, title)> <!ELEMENT authors author+> <!ELEMENT author (#PCDATA)> <!ELEMENT classification EMPTY> <!ELEMENT title (#PCDATA)> <!ATTLIST classification type ENTITY #REQUIRED> <!ATTLIST paper ID ID> Dekl. listy atrybutów Ciąg znaków "Parsed Character Data"
15 PCDATA i CDATA PCDATA - Parsed character data nie może zawierać znaków i sekwencji: "<", "&", "]]>" CDATA - Character data dane nie analizowane (ignorowane) przez parser Przykład: <![CDATA[ function matchwo(a,b) {. } ]]>
16 DTD - podstawy składni Deklaracja DOCTYPE (nagłówek dokumentu): <!DOCTYPE nazwa id-zewnętrzny [ deklaracje ]> Deklaracja elementu: <!ELEMENT nazwa (reguła)> <!ELEMENT ElementName ContentModel> Deklaracja atrybutów: <!ATTLIST element nazwa-attr typ-attr wart-domyślna nazwa-attr typ-attr wart-domyślna...>
17 DTD - definicje elementów Deklaracja <element e> liczność: R? R* R+ R 1 R 2..., R n R 1, R 2,..., R n #PCDATA EMPTY (#PCDATA e*)* ANY Znaczenie Dokładnie jeden <element e> Zero lub jedno R Zero lub więcej R Jedno lub więcej R Dokładnie jedno z R i Sekwencja R, kolejność ma znacznie Ciąg znaków Pusty Zawartość mieszana Cokolwiek
18 DTD - grupowanie elementów <!ELEMENT book ((author editor), title, isbn)> <!ELEMENT author (first, last)> <!ELEMENT foo (a b (c, d, e, (f g (h, i))))> Ograniczenia: Wewnątrz grupy nie można mieszać sekwencji i wyboru: Źle: <!ELEMENT foo (a b, c)> Dobrze: <!ELEMENT foo (a (b, c))> Dobrze : <!ELEMENT foo ((a b), c))> gramatyka musi być deterministyczna Źle : <!ELEMENT foo ((a, b) (a, c))>
19 DTD - Definicje atrybutów <person ID="bm"> Jan Nowak </person>... <bibliography> <book ID= "MiM"> <authors> <author authorref="bm">bułhakow Michał</author > <translator>i. Lewandowska </translator> </authors > <title> Mistrz i Małgorzata </title > <classification type="fiction"/> <publisher>czytelnik</publisher > <year>1992</ year> </book > Identyfikator obiektu Wewnątrz-dokumentowe odwołanie typu IDREF Odwołanie do zewn. Encji
20 Typ DTD - definicje atrybutów Znaczenie ID Identyfikator (token) unikalny w dokum. IDREF Odwołanie do identyfikatora ID IDREFS Odwołanie do identyfikatorów ID ENTITY Zewnętrzna encja (obraz, wideo, ) ENTITIES Zewnętrzne encje CDATA Ciąg znaków NMTOKEN Leksem (name token) NMTOKENS Leksemy NOTATION Dane inne niż XML Enumeration Wyliczenie opcji Conditional SectionINCLUDE & IGNORE Atrybuty mogą być: REQUIRED (wymagane), IMPLIED (opcjonalne) mogą mieć też wartości domyślne, które mogą być FIXED (stałe)
21 DTD - Definicje atrybutów - przykłady <!ATTLIST pudelko dlugosc CDATA "0"> <!ATTLIST pudelko szerokosc CDATA "0"> <!ATTLIST krawedz widoczna (tak nie) "nie"> <!ATTLIST osoba stan.cywilny (wolny zonaty zamezna wdowiec wdowa rozwiedziony rozwiedziona nieznany) #IMPLIED> Każda osoba ma identyfikator osoba.id Osoba może mieć zdefiniowanego szefa Identyfikator szefa jest określony jako odwołanie do zdefiniowanego identyfikatora <!ATTLIST osoba osoba.id ID #REQUIRED> <!ATTLIST osoba szef.ref IDREF #IMPLED> <osoba osoba.id= 110 >Jan Kowalski</osoba> <osoba osoba.id= 120 szef.ref= 110 >Jan Nowak</osoba>
22 Encje Encja (entity): Nazwany tekst lub inna dana fizyczna reprezentacja obiektu informacyjnego, uogólniony "plik", jednostka fizycznej budowy dokumentu, uogólnienie pojęcia "makro". Dokument to nie plik i to nie encja: encja dokumentu ( document entity ), zawartość dokumentu może znajdować się w wielu encjach (reprezentowanych np. przez pliki).
23 Encje Typy encji: ogólne - w dok. XML zastępują ciąg znaków parametryczne - występują wyłącznie w def. typu dokumentu i są rozwijane wg. definicji we wcześniejszym DTD, odpowiadają prostym makrodefnicjom w preprocesorze C zewnętrzne - pozwalają na "wstawienie" zewnętrznego dokumentu XML do dok. bieżącego binarne - pozwalają na zadeklarowanie danych nietekstowych
24 Encje ogólne Encje ogólne predefinowane (znakowe): & & < < > > ' ' " " <!ENTITY nazwa "tekst"> Przykład: <!ENTITY copyright "&#A9;"?> Używamy zamiast ciągu znaków, np. wtedy gdy wystąpił by konflikt z zarezerwowanymi znakami parsera W dekl. encji nie mogą wystąpić odwołania wzajemne!
25 Encje parametryczne <!ENTITY % nazwa tekst> Przykład: <!ENTITY % pcdata "(#PCDATA)"> <!ELEMENT author %pcdata;> <!ENTITY % expandme "INCLUDE">.. <![ %expandme; [ ELEMENT description (#PCDATA)> ]]> Rozwijane między znakami % i ; Rodzaj "makrodefinicji" Są rozwijane wyłącznie w obrębie DTD Porównaj z definicją INCLUDE, IGNORE! W deklaracjach encji parametrycznych nie mogą wystąpić odwołania wzajemne!
26 DTD - Definicje warunkowe Włączanie i wyłączanie fragmentów DTD: <![INCLUDE[ <!ELEMENT book (authors, classification?, title)]> ]]> <![IGNORE[ <!ELEMENT book (authors, classification?, title)]> ]]> Konstrukcje te mają praktyczny sens w połączeniu z encjami parametrycznymi
27 Encje binarne / nieprzetwarzalne (unparsed entity) Przykład: <!ENTITY %obraz1 SYSTEM " NDATA GIF89a> Deklaracja Notacji <!Notation GIF89a SYSTEM "-//CompuServe/NOTATION Grafic Interchange Format 89a//EN"> Encje binarne pozwalają na zadeklarowanie danych nietekstowych Notacje używane w połączeniu z encjami binarnymi uzupełniają informację o typach encji binarnych Notacje informują parser z jakim rodzajem danych nietekstowych ma do czynienia Parser nie analizuje danych binarnych, ale może je przekazać do zewnętrznego programu
28 Encje ogólne: wewnętrzne i zewętrzne Encje wewnętrzne: DTD: <!ENTITY mb "Michał Bułhakow"> Instancja dokumentu: &mb; urodził się w 1891 roku. Encje zewnętrzne: DTD: <!ENTITY abstr1 SYSTEM "file:///abstrakt.xml"> <!ENTITY abstr2 SYSTEM "file:///intro.xml"> <!ENTITY intro SYSTEM "file:///wstep.xml"> Instancja dokumentu: <paper> &abstr1; &abstr2; &intro; </paper> URL, pokazuje na zewnętrzny plik Logicznie odpowiada wstawieniu zawartości pliku
29 Rodzaje encji - podsumowanie Encje ogólne Encje parametryczne Encje przetwarzane Encje binarne Encje przetwarzane Encje binarne Encje wewnętrzne Encje zewnętrzne
30 DOCTYPE Deklaracja DTD może mieć dwie postacie: <!DOCTYPE RootElement SYSTEM DTD_URI? [InternalDeclarations]? > <!DOCTYPE RootElement PUBLIC PUBLIC_ID URI [InternalDeclarations]? > Pierwsza postać jest używana gdy DTD jest "lokalne" w stosunku do danego dokumentu Druga postać jest używana dla ogólnie znanych i przyjętych DTD (np. XHTML)
31 DOCTYPE SYSTEM <!DOCTYPE RootElement SYSTEM DTD_URI? [InternalDeclarations]? > RootElement - nadrzędny element tego DTD DTD_URI - położenie DTD URI może być względne lub bezwzględne (w sensie ścieżki) Deklaracje wewnętrzne - patrz wcześniej Przykłady: <!DOCTYPE BookList SYSTEM "bookstore.dtd"> <!DOCTYPE BookList SYSTEM >
32 DOCTYPE PUBLIC <!DOCTYPE RootElement PUBLIC PUBLIC_ID URI [InternalDeclarations]? > Ta postać używana dla ogólnie znanych, zestandaryzowanych DTD DTD wykraczające poza kręgi jednej organizacji PUBLIC_ID Ogólnie znany, niezmienny URI jak w SYSTEM
33 Umieszczanie DTD W encji dokumentu: deklaracje encji deklaracje notacji W zewnętrznej encji - definicje wspólne dla wszystkich dokumentów danego typu: elementy atrybuty encje parametryczne I tu, i tu (metoda mieszana) przedefiniowywanie encji parametrycznych, przedefiniowywanie atrybutów, dodawanie nowych atrybutów,
34 DTD w encji dokumentu <!DOCTYPE bibliography SYSTEM [ <!ELEMENT bibliography book*> <!ELEMENT book (authors, classification?, title)> <!ELEMENT authors author+> <!ELEMENT author (#PCDATA)>... ]> <bibliography> <book> <authors> <author>bułhakow Michał</ author > </authors > <title> Mistrz i Małgorzata </ title >...
35 bibliografia.dtd: DTD w zawnętrznej encji <!ELEMENT bibliography book*> <!ELEMENT book (authors, classification?, title)> <!ELEMENT authors author+> <!ELEMENT author (#PCDATA)>... Moja-bib.xml: <!DOCTYPE bibliography SYSTEM "bibliografia.dtd"> <bibliography> <book> <authors> <author>bułhakow Michał</author > </authors > <title> Mistrz i Małgorzata </title >
36 <bibliography> <book class="fikcja"> <authors> <author>&mb;</author > </authors > TIN zima , Grzegorz Blinowski DTD zewnętrzne i wewnętrzne Bibliografia.dtd: (zewnętrzny podzbiór DTD) <!ELEMENT bibliography book*> <!ELEMENT book (authors, classification?, title)> <!ELEMENT authors author+> <!ELEMENT author (#PCDATA)>... Moja-bib.xml: <!DOCTYPE bibliography SYSTEM "bibliografia.dtd"[ <!ENTITY mb "Michał Bułhakow"> Wewnętrzny <!ATTLIST book class #IMPLIED> podzbiór DTD ]>
37 DTD/XML Terminalogia - Pamiętajmy! DTD - to nie plik.dtd: DTD tworzą zarówno DTD zewnętrzne jak i definicje z DTD wewnętrznego Dokument XML to nie plik.xml: dokument = definicja języka + oznakowanie + dane, instancja dokumentu = tekst zgodny ze zdefiniowanym językiem.
38 Przestrzenie nazw XML
39 XML - Przestrzenie nazw "Czyste" DTD - Nazwy elementów i atrybutów tworzone są dowolnie może to prowadzić do niejednoznaczoności: Geometria: <element>circle</element> Chemia: <element>oxygen</element> Jak zapewnić unikalność nazw? Wprowadzić "prefiksy"!
40 XML - Przestrzenie nazw Jak zapewnić unikalność nazw? Wprowadzić "prefiksy": <h:html xmlns:xdc=" xmlns:h=" <h:head><h:title>book Review</h:title></h:head>... <xdc:bookreview> <xdc:title>xml: A Primer</xdc:title>... </h:html> Bez ryzyka pomyłki możemy mieszać różne "słowniki" Uwaga: przestrzeń nazw tylko identyfikuje słownik, definicja to kwestia odrębna
41 XML Schema
42 XML Schema Wady DTD: odrębny język (czy nie byłoby przyjemnie zdefiniować strukturę XML w XML?) Brak: przestrzeni nazw, typów danych, dziedziczenia Zalety DTD Elastyczny, semi-strukturalny Szeroko przyjęty Bazuje na SGML
43 XML Schema XML Schema definiuje: nowe elementy poprzez tagi: <element name= nazwa-elementu...> dla tak zdefiniowanego elementu określamy jego typ (to co może się znaleść między tagami <e>... </e>: n.p.: <element name=... type= string > nowe atrybuty podobnie... aby powiedzieć więcej o zawartości elementu dostępne są typy proste... aby móc wielokrotnie wykorzystać raz zdefiniowane elementy dostępne są typy elementów
44 XML Schema - Typy Atrybut type - definicja typu: <element name="name" type="string"/> Podelement complextype lub simpletype: <element name="order"> <complextype>... </complextype> <element> Typy proste definiują zbiory wartości atomowych (nie posiadających wewnętrznej struktury XML). Typy proste: wszystkie typy wbudowane (np. string), oraz typy stworzone na ich bazie Typów prostych używa się ich do określania poprawnych wartości atrybutów i zawartości elementów.
45 XML Schema Typy proste: string, boolean, integer, float, datetime, ID, IDREF, CDATA, Typy złożone: sequence, choice, group, all. Niektóre typy proste: ID, IDREF, CDATA są zastrzeżone tylko dla atrybutów. Kontrola krotności elementów podrzędnych: minoccurs, maxoccurs. Kontrola użycia atrybutów: atrybut use o dopuszczalnych wartościach: required, optional lub prohibited.
46 XML Schema - Typy c.d. <xsd:element name="person"> <xsd:complextype> <xsd:sequence> <xsd:element name="firstname" type="xsd:string" minoccurs="1" maxoccurs="2"/> <xsd:element name="surname" type="xsd:string"/> <xsd:element name="gender" type="xsd:string"/> <xsd:element name="age" type="xsd:string"/> </xsd:sequence> <xsd:attribute name="id" type="xsd:id" use="required"/> </xsd:complextype> </xsd:element>
47 XML Schema - tworzenie typów prostych Własne typy proste można tworzyć przy pomocy aspektów (facets): enumeration, length, minlength, maxlength. list, mininclusive, maxinclusive, minexclusive, maxexclusive, pattern, union, P. Typ utworzony poprzez restrykcję typu prostego: <xsd:element name="wiek"> <xsd:simpletype> <xsd:restriction base="xsd:integer"> <xsd:mininclusive value="0"/> <xsd:maxinclusive value="140"/> </xsd:restriction> </xsd:simpletype> </xsd:element>
48 XML Schema - tworzenie typów prostych Wyrażenia regularne w def. typów prostych: <xsd:attribute name="nip"> <xsd:simpletype> <xsd:restriction base="xsd:string"> <xsd:pattern value="\d{3}-\d{3}-\d{2}-\d{2}"/> </xsd:restriction> </xsd:simpletype> </xsd:attribute>
49 Model mieszany DTD nie pozwala na ograniczenie liczby oraz kolejności podelementów. W XML Schema typ o modelu mieszanym definiuje się jak każdy inny typ: <xsd:element name="event"> <xsd:complextype mixed="true"> <xsd:sequence> <xsd:element name="eventtype" type="xsd:string"/> <xsd:element name="date" type="xsd:string"/> <xsd:element name="duration" type="xsd:string" maxoccurs="2"/> </xsd:sequence> </xsd:complextype> </xsd:element> TIN zima , Grzegorz Blinowski XML Schema - model mieszany
50 XML Schema - deklaracje i typy typ anonimowy: <xsd:simpletype> <xsd:restriction base="xsd:integer"> <xsd:mininclusive value="0"/> <xsd:maxinclusive value="140"/> </xsd:restriction> </xsd:simpletype> typ nazwany: <xs:simpletype name="stringtype"> <xs:restriction base="xs:string"/> </xs:simpletype> <xs:complextype name="shiptotype"> <xs:sequence> <xs:element name="name" type="stringtype"/> <xs:element name="address" type="stringtype"/> </xs:sequence> </xs:complextype>
51 XML Schema - rozszerzenia typu definicyjnego <xsd:complextype name="publication"> <xsd:sequence> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:year"/> </xsd:sequence> </xsd:complextype> <xsd:complextype name="paper"> <xsd:complexcontent> <xsd:extension base="publication"> <xsd:sequence> <xsd:element name="publisher" type="xsd:string"/> </xsd:sequence> </xsd:extension> </xsd:complexcontent> </xsd:complextype>
52 XML Schema - deklaracja globalne i lokalne <xsd:complextype name="publication"> <xsd:sequence> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:year"/> <xsd:element ref="isbn"/> </xsd:sequence> </xsd:complextype> <xsd:element name="isbn"> <xsd:simpletype> <xsd:restriction base="xsd:string"> <xsd:pattern value="\d{2}-\d{3}"/> </xsd:restriction> </xsd:simpletype> </xsd:element>
53 XML Schema - deklaracje i typy DTD - deklaracja elementu definiuje jednocześnie typ jego zawartości. DTD - w przypadku gdy mamy przypisać ten sam model zawartości wielu elementom musimy powtórzyć definicję modelu (można też użyć encji parametrycznych). XML Schema - typ zawartości - definiujemy nadając nazwę, a następnie przypisujemy do dowolnie wielu elementów I/lub atrybutów. Typ anonimowy można zdefiniować bezpośrednio w deklaracji elementu (jak DTD)
54 XML - DTD (zestawienie) DTD: Wywodzi się z SGML Specyficzna składnia 10 typów danych Brak kontroli tekstowej zawartości elementów XML Schema: Zaprojektowany na potrzeby XML-a Składnia XML 41+ typów danych Zaawansowana kontrola tekstowej zawartości elementów Mieszany model zawartości Możliwość definiowania własnych typów danych.
55 XHTML
56 XHTML - podstawy XHTML - Extensible Hypertext Markup Language XHTML ma zastąpić HTML XHTML jest prawie identyczny z HTML 4.01 XHTML to bardziej rygorystyczna składniowo i czystsza wersja HTML XHTML 1.0 HTML 4.01 specyfikowany jako XML DTD Obecnie HTML5 przejął XHTML
57 XHTML - reguły Elementy XHTML muszą być poprawnie zagnieżdżone: <b><i>bold, italic</b></i> - źle!!! Dokumenty XHTML muszą być w pełni sformułowane: <html> <head>... </head> <body>... </body> </html> Nazwy znaczników muszą być pisane małymi literami Wszystkie elementy XHTML muszą być domknięte Elementy puste: <br />, <hr />, <image src="smile.gif" /> Uwaga - niektóre przeglądarki wymagają spacji przed zamykającym /
58 XHTML - reguły Nazwy atrybutów muszą być pisane małymi literami: Przykład: <table width="100%"> Wartości atrybutów muszą być ujęte w cydzysłowy Przykład : <table width="100%"> "Minimalizacja" atrybutów jest zakazana Przykład : <frame noresize="noresize">, nie może być zapisane jako: <frame noresize> Atrybut id zastępuje atrybut name: Źle: <img src="img.gif" name="obrazek1" /> Dobrze: <img src="img.gif" id="obrazek1" /> Lepiej: <img src="img.gif" name="obrazek1" id="obrazek1" />
59 XHTML - odmiany Trzy podstawowe DTD dla XHTML to: Strict (ścisły) Czyste oznakowanie, bez atrybutów "wizualnych" (font, color, size) Używać wyłacznie CSS (Cascading Style Sheets) do definicji wyglądu dokumentu Transitional (przejściowy) W zgodzie z mieszaniną standardowego formatowania HTML oraz CSS Zezwala na przestarzałe konstrukcje HTML Frameset Zgodne z HTML frames
60 XHTML - odmiany Każdy dokument zgodny z XHTML musi rozpoczynąc się deklaracją DOCTYPE ze wskazaniem DTD: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" " HTML5: <!DOCTYPE html>
61 XHTML - narzędzia HTML TIDY (Dave Raggett) darmowe narzędzie pracujące pod UNIX-em służące do walidacji oraz "czyszczenia" dokumentów XHTML W3C HTML Validation Tool narzędzie on-line przeprowadzające walidację (ale nie poprawiające) dokumentów XHTML
62 XPath, XPointer
63 Xpath Dokument XML ma postać hierarchiczną i może być reprezentowany w postaci drzewa, węzły: elementy, atrybuty, komentarze,... XPATH - język pozwalający na "poruszanie się" po dokumencie XML jak po drzewie XPath = XSLT XPointer ta część Xpointer, która została użyta w XSLT (dalej) Status - rekomendacja W3C
64 XPath Poruszanie się w hierarchii elementów: /book/chapter - poczynając od korzenia chapter/section - relatywnie /book//section - nie jest bezpośrednim przodkiem */section - dowolny przodek../chapter - wyżej o poziom w hierarchii book[indeks]/chapter - indeks musi być rodzeństwem chapter book[@title="mistrz I małgorzata]/chapter - wybór wg. wartości atrybutu tak naprawdę powyższe konstrukcje są skrótowe - posługujemy się wyrażeniami Xppath:. = self::node().. = parent::node() // = = attribute::
65 XPATH - poruszanie się po drzewie Krok w sieżce składa się z: kierunku, testu węzła, predykatu Kierunki w ścieżce: child descendant parent ancestor following-sibling preceding-sibling following preceding attribute namespace self descendand-or-self ancestor-or-self Test węzła: nazwa węzła, * wszystkie w. podstawowego typu node() text() comment() Ścieżki: /book/section/ /child::book/child::section (child:: możemy pominąć).//para self::node()/descendant-orself::node()/child::para /doc/chapter[5]section[2]
66 Przetwarzanie XML Parser XML: analizuje dokument XML, przekazuje wyniki analizy Sprawdza poprawność leksykalną i syntaktyczną Może, ale nie musi sprawdzić poprawności semantycznej (zgodności z modelem) Dostępne parsery XML: b. wiele systemów darmowych i komercyjnych dość typowe - "model parsera" (API) niezależny w dużej mierze od języka programowania i dostępny dla wielu języków (C++, Java, Python, Perl)
67 Przetwarzanie XML Parser nie walidujący (prosty) sprawdza wyłącznie syntaktyczną poprawność, tj. zgodność z XML nie sprawdza zgodności z DTD (XML Schema) ewentualna kontrola poprawności - po stronie programisty Parser walidujący sprawdzi zgodność z daną definicją (DTD, XML Schema,...) Wynik działania parsera reprezentacja dokumentu w postaci drzewa lub hierarchii obiektów, n.p. - Document Object Model (DOM) Strumień zdarzeń - otwarty/zamknięty element, atrybut, etc. - Simple API for XML - SAX
68 SAX (parser zdarzeniowy) Definiujemy funkcję callback SetContentHandler() Wywołujemy funkcję parse() Parser przetwarza tekst XML wywołując dostarczone przez programistę funkcje callback: startdocument(), enddocument(), startelement(), endelement(), characters(), ignorablewhitespaces Programista może dowiedzieć się więcej o przetwarzanym elemencie, atrybucie korzystając z funkcji: getlength(), getvalue()
69 import org.xml.sax.*; import org.xml.sax.helpers.*; class SAXHandler extends DefaultHandler { public void startdocument() { System.out.println("BEGIN"); } public void enddocument() { System.out.println("Koniec."); } public void startelement(string namespaceurl, String localname, String qname, Attributes atts) { System.out.print("[ELEMENT: " + localname); } public void endelement(string namespaceurl, String localname, String qname) { System.out.print(localName + " ELEMENT]" ); }
70 public class SAXExample { public static void main(string[] args) throws Exception { String uri; if(args.length == 0) { throw new Exception("File name?"); } else { uri = args[0]; } } } XMLReader parser = XMLReaderFactory.createXMLReader(); SAXHandler handler = new SAXHandler(); parser.setcontenthandler(handler); parser.parse(uri);
71 SAX - wady, zalety Zalety: Jednoprzebiegowy, Szybki Mała zajętość pamięci (w szczególności np. plik XML nie musi być cały w pamięci) Dane nieistotne mogą być ignorowane Wady: Nie umożliwia modyfikacji i ponownego wygenerowania dokumentu Szereg rutynowych czynności zrzuconych na programistę, np. budowa drzewa (o ile jest w danym zastosowaniu konieczne) Nie przetwarza i nie waliduje modelu (DTD, XMLSchema)
72 Parser libxml2 Darmowe narzędzie dostępne dla szeregu platform (Windows, Linux, Unix) Kod źródłowy i API C xmldocptr doc; xmlnodeptr cur; doc = xmlparsefile(docname); if (doc == NULL ) { fprintf(stderr,"niepoprawny dokument. \n"); return; } cur = xmldocgetrootelement(doc); if (cur == NULL) { fprintf(stderr,"empty document\n"); xmlfreedoc(doc); return; } if (xmlstrcmp(cur->name, (const xmlchar *) "story")) { fprintf(stderr,"niepoprawny dokument, root node!= story"); xmlfreedoc(doc); return; }
73 Parser libxml2 Iterowanie po drzewie dokumentu: cur = cur->xmlchildrennode; while (cur!= NULL) { if ((!xmlstrcmp(cur->name, (const xmlchar *)"keyword"))) { } key = xmlnodelistgetstring(doc, cur->xmlchildrennode, 1); printf("keyword: %s\n", key); xmlfree(key); cur = cur->next; } Tekst wewnątrz elementu jest jego potomkiem
74 libxml2 Libmxl2 umożliwia też: Nawigację w drzewie poprzez wyrażenia XPATH Modyfikację drzewa rozbioru Modyfikację elementów Modyfikację atrybutów Zapis drzewa w postaci XML
75 DOM (Document Object Model) Parser DOM tworzy hierarchię obiektów: document, element, attribute, text, comment API DOM (W3C DOM API) jest w dużej mierze niezależne od języka programowania: get... first/last child, prev/next sibling, childnodes, insertbefore, replace, getelementsbytagname Bazowy model parsera DOM: budowanie dokumentów, nawigacja w strukturze dokumentów, dodawanie elementów i atrybutów, modyfikacje elementów i atrybutów, usuwanie elementów/atrybutów i ich zawartości.
76 DOM - obiekty parsera Typ Node - węzeł XML: element, tekst,... Właściwości: attributes, childnodes, firstchild, lastchild, parentnode, nodename, nodetype, nodevalue, Operacje: appendchild(n), clonenode(b), removechild(n), haschildnodes(), Typ NodeList pomocniczy lista węzłow (length, item(i)) Type Element Document: Właściwości: documentelement, doctype Operacje: createelement(), createtextnode,...
77 DOM - wady, zalety Zalety: Pozwala na arbitralne "chodzenie" po drzewie dokumentu Uniwersalny Pozwala na modyfikację i ponowne generowanie dokumentu Istnieją wersje walidujące Wady: Wolny i pamięciożerny Zbyt rozbudowany do prostych aplikacji
78 Dostępne (wybrane) parsery XML XP (James Clark) - Java, prosty, niewalidujący Expat (James Clark) - Java, C/C++, Python, Perl (xml::parser) Xerces (walidujący, Java, C++ i Perl), Oracle XML Parser for Java (walidujący, DOM), XML4C - IBM XML Parser for C++ (walidujący, DOM), Microsoft XML Core Services (MSXML 4.0, komponent COM)
79 XML - Standardy Pochodne XML (Extensible Markup Language) XML Namespaces XML DTDs, XML Schema RDF (Resource Description Framework) XSL (Extensible Style Sheet Language) XPath (=XSLT XPointer), XLink XQL, XML-QL (XML Query Language) XMAS (XML Matching And Structuring language) XMLP (XML Protocol (SOAP)) OWL (Web Ontology Language) excelon,...
80 XML - przykłady formatów Advertising: adxml place an ad onto an ad network or to a single vendor Literature: Gutenberg convert the world s great literature into XML Directories: dirxml Novell s Directory Services Markup Language (DSML) Web Servers: apachexml parsers, XSL, web publishing Travel: opentravel information for airlines, hotels, and car rental places News: NewsML creation, transfer and delivery of news Human Resources: XML-HR standardization of HR/electronic recruiting XML definitions International Dvt: IDML improve the mgt. and exchange of info. for sustainable development Voice: VoxML markup language for voice applications Wireless: WAP (Wireless Application Protocol) wireless devices on the World Wide Web Weather: OMF Weather Observation Markup Format (simulation) Geospatial: ANZMETA distributed national directory for land information Banking: MBA Mortgage Bankers Association of America --> credit report, loan file, underwriting Healthcare: HL7 DTDs for prescriptions, policies & procedures, clinical trials Math: MathML (Mathematical Markup Language) Surveys: DDI (Data Documentation Initiative) codebooks in the social and behavioral sciences
81 XML - przykłady formatów CommerceNet eco Framework XML specs. to support interoperability among e-businesses Commerce One Common Business Library (CBL): set of business components, docs. In DTD, XDR, SOX BizTalk Microsoft spec. based on XML schemas cxml (Commerce XML) -- tag-sets for e-procurement into BizTalk Electronic Data Interchange (EDI) RosettaNet Common format for online ordering FpML (Financial products Markup Language): sharing of financial data (interest rate & foreign exchange products) Open Buying on the Internet (OBI) OBI high volume b2b purchasing transactions over the Internet (Office Depot, Lockheed, barnesandnoble, AX... E-commerce and XML VISA Invoices The Visa Extensible Markup Language (XML) Invoice Specification provides a comprehensive list of data elements contained in most invoices, including: Buyer/Supplier, Shipping, Tax, Payment, Currency, Discount, and Line Item Detail. B2B Integration code360 XML-Broker is middleware software that manages XML based transactions
82 XML - Podsumowanie XML nie jest językiem programowania XML to sposób zapamiętywania danych wraz z ich strukturą w dokumencie tekstowym: bezpłatny, otwarty, elastyczny, niezależny od platformy XML to zbiór mechanizmów do tworzenia języków specyficznych dla zastosowań. Użycie XML-a nie zwalnia od konieczności analizy, projektowania,...
83 XML -Podsumowania c.d. - Zastosowania Interfejs maszyna - człowiek Prezentacja Formatowanie dokumentów na potrzeby danej platformy (PC - GDI/text, PDA, telefon,...) Metoda komunikacji maszyna - maszyna: uzyskiwanie informacji w dobrze znanej (standardowej postaci) - np. notowania giełdowe, zapytania do baz danych, itp komunikacja "ad hoc" między aplikacjami automatyczne tworzenie i przetwarzanie dokumentów dokumenty tworzone "w locie"
Podstawy XML-a. Zaawansowane techniki programowania
Podstawy XML-a Zaawansowane techniki programowania Dokumenty XML XML = ang. Extensible Markup Language rozszerzalny język znaczników
XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)
XPath XML Path Language XPath. XSLT część 1. Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: drzewiasty model struktury dokumentu, normalizacja zawartości dokumentu (ten
Przykładowy dokument XML
Przykładowy dokument XML DTD - wady Ograniczona kontrola nad strukturą dokumentów. Zbyt wysokopoziomowe typy danych: liczby, daty są zawsze reprezentowane jako tekst! Bardzo ogólne metody definiowania
Wykorzystywanie parsera DOM w programach Java i PL/SQL
Wykorzystywanie parsera DOM w programach Java i PL/SQL Maciej Zakrzewicz mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ Parser DOM Aplikacja DOM API Parser DOM Dokument XML Drzewo DOM Parser
Język XML Schema. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Język Schema Po zrealizowaniu materiału student będzie w stanie Stworzyć formalny opis dokumentu Deklarować elementy i atrybuty Określić strukturę elementów w dokumencie Operować dostępnymi typami danych
Kurs WWW Język XML, część I
Język XML, część I Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Zawartość modułu Wprowadzenie do XML Składnia Znaczniki i atrybuty DTD XML Schema Na podstawie kursu ze strony: http://www.w3schools.com/schema/default.asp
Plan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML
Plan dzisiejszego wykładu Narzędzia informatyczne w językoznawstwie Perl - Wprowadzenie do XML Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 16. kwietnia
TIN Techniki Internetowe zima
TIN Techniki Internetowe zima 2016-2017 Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej Plan wykładów 2 Intersieć, ISO/OSI, protokoły sieciowe, IP 3 Protokół IP i prot. transportowe:
extensible Markup Language, cz. 4 Marcin Gryszkalis, mg@fork.pl
extensible Markup Language, cz. 4 Marcin Gryszkalis, mg@fork.pl XML 5 XML Schema Projektowany jako rozszerzenie i uzupełnienie DTD Jest w stanie odwzorować dowolną definicję DTD (ale nie odwrotnie!) Bardzo
XML Schema. Typy proste, wyprowadzanie typów, modularyzacja schematu. Patryk Czarnik. Instytut Informatyki UW
XML Schema Typy proste, wyprowadzanie typów, modularyzacja schematu Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Typy proste i złożone Typy złożone struktura
Model semistrukturalny
Model semistrukturalny standaryzacja danych z różnych źródeł realizacja złożonej struktury zależności, wielokrotne zagnieżdżania zobrazowane przez grafy skierowane model samoopisujący się wielkości i typy
Wprowadzenie do technologii XML
Katedra Mikroelektroniki i Technik Informatycznych Łódź, 6 października 2005 roku 1 Informacje organizacyjne Omówienie przedmiotu 2 vs HTML Struktura 3 Struktura Informacje o przedmiocie Informacje organizacyjne
DTD - encje ogólne i parametryczne, przestrzenie nazw
DTD - encje ogólne i parametryczne, przestrzenie nazw Instytut Informatyki Encje Encja (ang.entity) - uogólnienie pojęcia makrodefinicji Encje to dogodny sposób reprezentacji danych które występują wielokrotnie,
Perl a XML. Narzędzia informatyczne w językoznawstwie. Generowanie danych XML - Przykład. Generowanie danych XML. Perl - Przetwarzanie XML
Perl a XML Narzędzia informatyczne w językoznawstwie Perl - Przetwarzanie XML Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 31 modułów w CPAN zawiera w
Programowanie internetowe
Programowanie internetowe Wykład 1 HTML mgr inż. Michał Wojtera email: mwojtera@dmcs.pl Plan wykładu Organizacja zajęć Zakres przedmiotu Literatura Zawartość wykładu Wprowadzenie AMP / LAMP Podstawy HTML
JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA. Marcin Lewandowski [ mlew@ippt.gov.pl ]
JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA Marcin Lewandowski [ mlew@ippt.gov.pl ] XML 2 XML XML jest formatem tekstowym Zjadliwy dla ludzi Zawiera treść (dane) oraz znaczniki (markup) Znaczniki i zależności
XML extensible Markup Language. Paweł Chodkiewicz
XML extensible Markup Language Paweł Chodkiewicz XML - extensible Markup Language Uniwersalny język znaczników przeznaczony do reprezentowania różnych danych w strukturalizowany sposób. Historia GML Projekt
XML Schema. Motywacja, struktura schematu, typy złożone. Patryk Czarnik. Instytut Informatyki UW
XML Schema Motywacja, struktura schematu, typy złożone Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Dlaczego nie DTD? Zastosowania XML-a w elektronicznej
Procesowanie dokumentów XML
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Procesowanie dokumentów XML Programowanie w Javie 2 mgr inż. Michał Misiak Cechy XML Sformalizowany zapis informacji restrykcyjne
Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.
Definiowanie typów dokumentów Część 1. DTD, XML Schema Jak wygląda XML? st. asp. Jan Łapówka dołowice Górne wypadek
LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT
LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT 1. Wstęp XML (Extensible Markup Language Rozszerzalny Język Znaczników) to język formalny przeznaczony do reprezentowania danych
SAX i DOM wykorzystanie XML-a we własnych aplikacjach. Simple API for XML Parsing Document Object Model
SAX i DOM wykorzystanie XML-a we własnych aplikacjach Simple API for XML Parsing Document Object Model 1 SAX - wstęp Definicja: standardowy interfejs do parsowania plików XML oparty na modelu zdarzeniowym
Prezentacja i transformacja
Prezentacja i transformacja Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 21 października 2005 roku 1 Prezentacja Przykładowa aplikacja CSS- Cascading Style Sheets CSS2aXML
c TP: anything: 13 listopada 2004 roku 1
SGML/XML SGML: International Standard (ISO 8879). Information Processing Text and Office Systems Standardized Generalized Markup Language. Znakowanie powinno opisywać strukturę dokumentu (...) a nie określać
TIN Techniki Internetowe zima 2015-2016
TIN Techniki Internetowe zima 2015-2016 Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej Plan wykładów 2 Intersieć, ISO/OSI, protokoły sieciowe, IP 3 Protokoły transportowe: UDP, TCP 4
XML Path Language (XPath)
XML Path Language (XPath) 1 Cel adresowanie elementów /częś ci dokumentu XML składnia podobna do URI wyszukiwanie elementów bądź grup elementów dokument jako drzewo typy węzłów: element, attribute, text
Podstawowe konstrukcje Podstawowymi konstrukcjami są wzorce element oraz attribute:
Standard Relax NG Schemat strukturalizacji dokumentów Relax NG (relaxing). Opracowany głównie przez Jamesa Clarka i Makoto Muratę. Standard ISO: Information technology Document Schema Definition Language
Kurs języka Python Wykład 8. Przetwarzanie tekstu Wyrażenia regularne Biblioteka urllib Parsowanie html'a XML
Kurs języka Python Wykład 8. Przetwarzanie tekstu Wyrażenia regularne Biblioteka urllib Parsowanie html'a XML Wyrażenia regularne c:\> dir *.exe $ rm *.tmp Wyrażenia regularne 'alamakota' '(hop!)*' { '',
Rola języka XML narzędziem
Wprowadzenie do XML dr inż. Adam Iwaniak Szkolenie w Luboradzy, ZCPWZ, 12-13.02.2009r. Rola języka XML narzędziem Pierwszą rewolucją internetową było dostarczenie ludziom informacji. Znajdujemy się teraz
Jak wygląda XML? Definiowanie typów dokumentów. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków. Poprawność dokumentów
Jak wygląda XML? 9 października 2003 Definiowanie typów dokumentów Część 1: DTD st. asp. Jan Łapówka dołowice Górne
Dokument poprawnie sformułowany jest zgodny z ogólnymi zasadami składniowymi:
DTD Document Type Definition Dokument poprawnie sformułowany (well-formed) Dokument poprawnie sformułowany jest zgodny z ogólnymi zasadami składniowymi: 1. KaŜdy znacznik musi posiadać zamknięcie (wyjątek
Wprowadzenie do XML. Tomasz Przechlewski
Spis treści Wprowadzenie do XML Tomasz Przechlewski 1. SGML/XML.. 1 1.1. Składniki systemu.. 1 2. Dokument XML i schemat DTD. 1 2.1. Struktura dokumentu XML 1 2.2. DTD 4 2.3. Elementy. 5 2.4. Atrybuty
Plan prezentacji DTD. Wiązanie DTD z dokumentem XML Deklaracja typu dokumentu. Co to jest DTD. Wstęp. Przedmiot: XML i jego zastosowania
Plan prezentacji Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak Akademia Górniczo - Hutnicza w Krakowie, Katedra Informatyki http://www.icsr.agh.edu.pl/~polak/ Wstęp Deklarowanie elementów
Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane
Extensible Markup Language (XML) Wrocław, 15.03.2019 - Java - technologie zaawansowane Wprowadzenie XML jest językiem znaczników (ang. markup language) używanym do definiowania zbioru zasad rozmieszczenia
extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl
extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl Plan wykładu Wprowadzenie: historia rozwoju technik znakowania tekstu Motywacje dla prac nad XML-em Podstawowe koncepcje XML-a XML jako metajęzyk
Relacyjne bazy danych a XML
Relacyjne bazy danych a XML Anna Pankowska aniap@amu.edu.pl Internet, SQLiXMLwbiznesie Internet nieoceniony sposób komunikacji z klientami, pracownikami i partnerami handlowymi przyspiesza transakcje finansowe
XQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.
XQuery XQuery XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.org/tr/xquery/ Język programowania funkcyjnego (podobnie jak Lisp) Język zapytań do danych
Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 05
Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 05 T. Romańczukiewicz Jagiellonian University 2009/2010 Plan Plan 1 DOM 2 DOM w innych językach 3 Podsumowanie Plan DOM DOM w innych
Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków
Definiowanie typów dokumentów Część 1. DTD Jak wygląda XML? st. asp. Jan Łapówka dołowice Górne wypadek dnia
Słowem wstępu. Standard: W3C XPath razem XSLT 1.0. XPath razem z XQuery 1.0 i XSLT 2.0. XPath trwają prace nad XPath 3.
Słowem wstępu Standard: W3C XPath 1.0-1999 razem XSLT 1.0 XPath 2.0-2007 razem z XQuery 1.0 i XSLT 2.0 XPath 3.0-2014 trwają prace nad XPath 3.1 XPath Język deklaratywny służący wskazywaniu elementów,
XML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW
XML w sosie własnym Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Podstawy
XML DTD XML Schema CSS
XML XML czyli Extensible Markup Language (rozszerzalny język znaczników) można traktować jak stosunkowo prosty i elastyczny format tekstowy wywodzący się z SGML. Pierwotnie został zaprojektowany aby umożliwiać
Definiowanie typów dokumentów Część 3. XML Schema
Definiowanie typów dokumentów Część 3. XML Schema 1 Wbudowane typy proste Źródło: XML Enhancements to Java (XJ). User Manual for Release Version 1.0 http://www.research.ibm. com/xj/doc/xjmanual/ XJmanual.html
Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema
Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema Globalne i lokalne deklaracje elementów i atrybutów Deklaracje lokalne:
XML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW
XML w sosie własnym Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk
Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.
Definiowanie typów dokumentów Część 1. DTD, XML Schema Jak wygląda XML? st. asp. Jan Łapówka dołowice Górne wypadek
Drzewa DOM. Maciej Zakrzewicz. mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/
Drzewa DOM Maciej Zakrzewicz mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ Document Object Model (DOM) Document Object Model jest standardem modelowania dokumentów XML przy użyciu struktury
I.Wojnicki, PHP. Smarty. Igor Wojnicki. Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie. 28 marca 2014
Igor Wojnicki (AGH, KIS) Smarty 28 marca 2014 1 / 33 Smarty Igor Wojnicki Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie 28 marca 2014 $Id: smarty.tex,v 1.2 2013/06/22 22:09:45 wojnicki
Wprowadzenie do XML schema
Spis treści Tomasz Przechlewski 1. Podstawowe pojęcia. 1 2. Typy proste.. 3 3. Wzorzec regułowy 4 4. Typy złożone 5 5. Modele o prostej zawartości 5 6. Modele o złożonej zawartości. 6 7. Rozszerzanie modelu
XML i nowoczesne technologie zarządzania treścią
XML i nowoczesne technologie zarządzania treścią Egzamin, 7 lutego 2014 r. Imię i nazwisko: Czas: 90 minut. Maksymalna suma punktów: 50. Pytania testowe są wielokrotnego wyboru, można przyjąć że co najmniej
INTEGRACJA I EKSPLORACJA DANYCH
INTEGRACJA I EKSPLORACJA DANYCH mgr inż. Anna Pankowska aniap@amu.edu.pl Anna Pankowska - I&E 1 Plan wykładu Integracja danych - Dane semistrukturalne i język XML jako standard składowania i wymiany danych
Podstawy języka XML. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Podstawy języka XML Cel zajęć Po zrealizowaniu materiału student będzie w stanie Prawidłowo zidentyfikować składowe dokumentu XML Utworzyć dokument XML Dokonać sprawdzenia poprawności składniowej (syntaktycznej)
WYKŁAD 2 DTD DOCUMENT TYPE DEFINITION CZĘŚĆ 1
WYKŁAD 2 DTD DOCUMENT TYPE DEFINITION CZĘŚĆ 1 XML (ang. Extensible Markup Language Rozszerzalny język znaczników) Oparty o SGML prosty, elastyczny format tekstowy opisujący klasę obiektów nazywanych dokumentami
Źródła. cript/1.5/reference/ Ruby on Rails: http://www.rubyonrails.org/ AJAX: http://www.adaptivepath.com/publications/e ssays/archives/000385.
Źródła CSS: http://www.csszengarden.com/ XHTML: http://www.xhtml.org/ XML: http://www.w3.org/xml/ PHP: http://www.php.net/ JavaScript: http://devedgetemp.mozilla.org/library/manuals/2000/javas cript/1.5/reference/
Programowanie obiektowe
Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych
5.14 JSP - Przykład z obiektami sesji... 83 5.15 Podsumowanie... 84 5.16 Słownik... 85 5.17 Zadanie... 86
Spis treści 1 Wprowadzenie - architektura, protokoły, system WWW... 1 1.1 Wstęp.................................................. 1 1.2 Ważniejsze daty......................................... 2 1.3 Protokoły
Dokumenty SEDU składają się z dwóch części: Opisu sprawy Formularza elektronicznego
Opis dokumentów SEDU Standard Elektronicznych Dokumentów Urzędowych są to dokumenty zapisane w standardzie XML, opisujące różnorakie procedury urzędowe, możliwe do częściowej lub całkowitej realizacji
Kurs HTML 4.01 TI 312[01]
TI 312[01] Spis treści 1. Wiadomości ogólne... 3 2. Wersje języka HTML... 3 3. Minimalna struktura dokumentu... 3 4. Deklaracje DOCTYPE... 3 5. Lista znaczników, atrybutów i zdarzeń... 4 5.1 Lista atrybutów
LAB 7. XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML
Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 7 XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML 1. Prosty dokument XML lab7_1.xml
I.Wojnicki, Tech.Inter.
Igor Wojnicki (AGH, KA) Frameworks 28 maja 2012 1 / 31 Frameworks oraz Serwery Aplikacji Igor Wojnicki Katedra Automatyki Akademia Górniczo-Hutnicza w Krakowie 28 maja 2012 Igor Wojnicki (AGH, KA) Frameworks
UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Po zrealizowaniu materiału student będzie w stanie Prawidłowo zidentyfikować składowe dokumentu XML Utworzyć dokument XML Dokonać sprawdzenia poprawności składniowej (syntaktycznej) dokumentu 2 1 WWW Consortium,
Schematy XML. Tomasz Traczyk. ttraczyk@ia.pw.edu.pl http://www.ia.pw.edu.pl/~ttraczyk/
Schematy XML Tomasz Traczyk ttraczyk@ia.pw.edu.pl http://www.ia.pw.edu.pl/~ttraczyk/ Plan prezentacji Dlaczego schematy? Przykład schematu XML Schema nieco szczegółów Rola schematów XML Problemy z DTD
XML extensible Markup Language 7
XML extensible Markup Language 7 XQuery Co to jest XQuery? XQuery to język zapytań dla XML. XQuery jest dla XML tym czym SQL dla baz danych, a SPARQL dla RDF. XQuery wykorzystuje wyrażenia XPath. XQuery
WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1
WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1 SGML (Standard Generalized Markup Language) Standardowy uogólniony język znaczników służący do ujednolicania struktury i formatu różnego typu informacji (danych). Twórcy
Dlaczego DTD nie wystarcza? Definiowanie typów dokumentów Część 2. XML Schema. Status XML Schema. DTD XML Schema. Definiowanie elementów i atrybutów
Dlaczego DTD nie wystarcza? Definiowanie typów dokumentów Część 2. XML Schema Zastosowania w integracji aplikacji struktury danych: przeniesienie zadania sprawdzania poprawności z tworzonej aplikacji na
BAZY DANYCH. Dr hab. Sławomir Zadrożny, prof. PR
BAZY DANYCH Dr hab. Sławomir Zadrożny, prof. PR Co to jest baza danych? Wiele możliwych definicji Zbiór danych, który istnieje przez dłuższy okres czasu Współdzielony zestaw logicznie powiązanych danych
Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT
Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT Marek Wojciechowski marek@cs.put.poznan.pl http://www.cs.put.poznan.pl/~marek/ Formatowanie dokumentów XML Język XML opisuje strukturę i
Technologie zarządzania treścią
Technologie zarządzania treścią dr inż. Robert Perliński rperlinski@icis.pcz.pl Politechnika Częstochowska Instytut Informatyki Teoretycznej i Stosowanej Technologie zarządzania treścią 2/43 Technologie
XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Osie (axes) Location paths
XPath XML Path Language XPath. XSLT część 1 Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: abstrakcyjny drzewiasty model struktury dokumentu, normalizacja zawartości
29. Poprawność składniowa i strukturalna dokumentu XML
29. i strukturalna dokumentu XML 13 października 2015 1 2 Poprawny składniowo dokument XML powinien być tworzony zgodnie z poniżej przedstawionymi zasadami. Deklaracja XML Powinien zawierać deklarację
JAVA W SUPER EXPRESOWEJ PIGUŁCE
JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Słowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0
Słowem wstępu Część rodziny języków XSL Standard: W3C XSLT 1.0-1999 razem XPath 1.0 XSLT 2.0-2007 Trwają prace nad XSLT 3.0 Problem Zakładane przez XML usunięcie danych dotyczących prezentacji pociąga
Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema. Elementy czy atrybuty? Wartości domyślne i ustalone. Elementy czy atrybuty?
Globalne i lokalne deklaracje elementów i atrybutów Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema Deklaracje lokalne:
XML extensible Markup Language. część 5
XML extensible Markup Language część 5 JavaScript Co to jest JavaScript? JavaScript był zaprojektowany w celu dodania interaktywności do stron HTML JavaScript jest językiem skryptowym JavaScript jest zwykle
Modele dostępu do dokumentu XML. Implementacja modelu parser. SAX2 pakiet org.xml.sax. Działanie modelu SAX przykład
Modele dostępu do dokumentu XML Wykorzystanie XML-a we własnych aplikacjach Pozwalają programistom na wysokopoziomowy dostęp do zawartości dokumentów XML : korzystamy z abstrakcyjnych obiektów, nie troszczymy
XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.
XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania. Reformuje on znane zasady języka HTML 4 w taki sposób, aby były zgodne z XML (HTML przetłumaczony na XML).
ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści
ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop. 2012 Spis treści Wstęp 9 1 HTML 5 i XHTML w pytaniach i odpowiedziach 13 Co to jest HTML 5? 13 Co to jest XHTML? 15 Czy strony utworzone w HTML
4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152
Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy
Zasady Nazewnictwa. Dokumentów XML 2007-11-08. Strona 1 z 9
Zasady Nazewnictwa Dokumentów 2007-11-08 Strona 1 z 9 Spis treści I. Wstęp... 3 II. Znaczenie spójnych zasady nazewnictwa... 3 III. Zasady nazewnictwa wybrane zagadnienia... 3 1. Język oraz forma nazewnictwa...
Usługi WWW. dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl
Budowa aplikacji sieciowych. Usługi WWW dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Usługi WWW W3C Working Group, Web Services Architecture,
TIN Techniki Internetowe zima
TIN Techniki Internetowe zima 2017-2018 Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej Techniki Internetowe Grzegorz Blinowski: pok. 206 (II p.) gmach Elektroniki Konsultacje - wtorek,
Przykładowy dokument XML
Język XML XML (extensible Markup Language, czyli rozszerzalny język znaczników) to specyfikacja dotycząca przechowywania informacji. Jest to również specyfikacja opisujaca strukturę tych informacji. XML
Prezentacja i transformacja
Prezentacja i transformacja Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 11 kwietnia 2010 Prezentacja i transformacja CSS2a Ważną cechą dokumentów XML jest ich łatwa prezentacja
libxml2 parser DOM dla C++ czwartek, 8 grudnia 11
libxml2 parser DOM dla C++ 1 SAX vs. DOM Dwa podstawowe typy API do przetwarzania dokumentów XML: Oparte na drzewach (ang. Tree-based API) - mapują strukturę dokumentu do drzewa i pozwalają użytkownikowi
SAX2 pakiet org.xml.sax
Modele dostępu do dokumentu XML 23 października 2003 Wykorzystanie XML-a we własnych aplikacjach Pozwalają programistom na dostęp do zawartości dokumentów XML na wysokim poziomie: korzystamy z abstrakcyjnych
Zaawansowany kurs języka Python
Wykład 5. 30 października 2013 Plan wykładu 1 2 3 4 yield from Zamiast Example for item in iterable: yield item: można pisać Example yield from iterable Plan wykładu 1 2 3 4 Przykłady wyrażeń regularnych
Komunikacja i wymiana danych
Budowa i oprogramowanie komputerowych systemów sterowania Wykład 10 Komunikacja i wymiana danych Metody wymiany danych Lokalne Pliki txt, csv, xls, xml Biblioteki LIB / DLL DDE, FastDDE OLE, COM, ActiveX
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Technologie Internetu HTML. Aleksander Denisiuk. denisjuk@pja.edu.pl
Technologie Internetu HTML Aleksander Denisiuk denisjuk@pja.edu.pl Polsko-Japońska Akademia Technik Komputerowych Wydział Informatyki w Gdańsku ul. Brzegi 55 80-045 Gdańsk Technologie Internetu p. 1 HTML
Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki
Instytut Informatyki Literatura http://www.w3c.org/tr/ - Technical Reports K. B. Stall - XML Family of Specifications, Addison-Wesley 2003 P. Kazienko, K. Gwiazda - XML na poważnie, Helion 2002 XML Rozszerzalny
Języki XPath i XQuery
Języki XPath i XQuery Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Model danych XPath Drzewo dokumentu Sekwencje i atomy Język XPath Od podstaw Ścieżki
Rys.2.1. Drzewo modelu DOM [1]
1. CEL ĆWICZENIA Celem ćwiczenia jest przedstawienie możliwości wykorzystania języka JavaScript do tworzenia interaktywnych aplikacji działających po stronie klienta. 2. MATERIAŁ NAUCZANIA 2.1. DOM model
XML w bazach danych i bezpieczeństwie
XML w bazach danych i bezpieczeństwie Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Klasyfikacja wsparcia dla XML-a w bazach danych (Relacyjna) baza danych
XML i nowoczesne metody zarządzania treścią
XML i nowoczesne metody zarządzania treścią Wykład 2: Modelowanie dokumentów XML-owych. DTD Maciej Ogrodniczuk MIMUW, 8 października 2009 Wykład 2: Modelowanie dokumentów XML-owych. DTD XML i nowoczesne
Implementacja schematów i statycznej kontroli typów w systemie JLoXiM
Paweł Mantur Implementacja schematów i statycznej kontroli typów w systemie JLoXiM projekt rozwiązania 2009-11-12 Schematy w bazach danych Relacyjne bazy danych: tabele, kolumny, typy danych, klucze itp.
Bazy danych i strony WWW
Bazy danych i strony WWW Obsługa baz danych poprzez strony WWW Niezbędne narzędzia: serwer baz danych np. MySQL serwer stron WWW np. Apache przeglądarka stron WWW interpretująca język HTML język skryptowy
World Wide Web? rkijanka
World Wide Web? rkijanka World Wide Web? globalny, interaktywny, dynamiczny, wieloplatformowy, rozproszony, graficzny, hipertekstowy - system informacyjny, działający na bazie Internetu. 1.Sieć WWW jest
XML Schema w przykładach
DTD a XML Schema Krótkie porównanie dla niecierpliwych: XML Schema w przykładach Maciej Ogrodniczuk mog@empolis.pl DTD Wywodzi się z SGML-a Specyficzna składnia 10 typów danych Brak kontroli tekstowej
Informatyka (10) dr inż. Katarzyna Palikowska Katedra Transportu Szynowego i Mostów p. 4 Hydro
Informatyka (10) dr inż. Katarzyna Palikowska Katedra Transportu Szynowego i Mostów p. 4 Hydro katpalik@pg.gda.pl katarzyna.palikowska@wilis.pg.gda.pl Architektura Klient-Serwer Gruby klient Cienki klient