XHTML2 i HTML5 Przyszłość WWW oparta o nowe standardy sieciowe HTML5 i XHTML2



Podobne dokumenty
rk HTML 4 a 5 różnice

Dokument hipertekstowy

XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.

Podstawy JavaScript ćwiczenia

<meta http-equiv="content-type" content="text/html; charset=iso ">

Multimedia w HTML5. Statyczne witryny internetowe 2TI/TOR. Marek Kwiatkowski

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

HTML 5 język wykorzystywany do tworzenia i prezentowania stron internetowych www. Jest

HTML5 Nowe znaczniki header nav article section aside footer

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

Systemy internetowe HTML + CSS - dodatki

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

Tworzenie Stron Internetowych. odcinek 5

Przegląd technologii

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

2 Podstawy tworzenia stron internetowych

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

29. Poprawność składniowa i strukturalna dokumentu XML

HTML ciąg dalszy. Listy, formularze

Aplikacje internetowe

Rozszerzenie funkcjonalności systemów wiki w oparciu o wtyczki i Prolog

Dokumentacja imapliteapi

Front-end: solidne podstawy. Wszystko, co warto wiedzieć o HTML, CSS, JavaScript i Bootstrap.

Harmonogram kursu: ECDL Core (Europejski Certyfikat Umiejętności Komputerowych) Grupa II

Wykład 03 JavaScript. Michał Drabik

Specyfikacja HTTP API. Wersja 1.6

Laboratorium 1 Wprowadzenie do PHP

Programowanie internetowe

Dokumenty SEDU składają się z dwóch części: Opisu sprawy Formularza elektronicznego

Nowoczesne Technologie WWW

1. Protokoły. Co programy wykorzystują do komunikacji przez sieć? wykorzystują protokoły komunikacyjne

E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, Spis treści

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Systemy internetowe HTML

M o d e r n i z a c j a k s z t a ł c e n i a z a w o d o w e g o w M a ł o p o l s c e. Godziny szkolenia (od do) Ilość godzin. Liczba uczestników

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

WYKŁAD 1 ANGULARJS CZĘŚĆ 1

5.14 JSP - Przykład z obiektami sesji Podsumowanie Słownik Zadanie... 86

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Aplikacje internetowe Koncepcja Architektura Technologie

Wprowadzenie do technologii XML

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

dlibra 3.0 Marcin Heliński

HTML 5. w tworzeniu aplikacji internetowych. czwartek, 5 kwietnia 12

DTD - encje ogólne i parametryczne, przestrzenie nazw

Responsive web design : projektowanie elastycznych witryn w HTML5 i CSS3 / Ben Frain. Wyd. 2. Gliwice, cop Spis treści

Elementarz HTML i CSS

APLIKACJE INTERNETOWE 1 HTML - STRUKTURA STRONY INTERNETOWEJ

Aplikacje Internetowe termin dodatkowy

Plan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML

JavaScript - wykład 4. Zdarzenia i formularze. Obsługa zdarzeń. Zdarzenia. Mysz. Logiczne. Klawiatura. Beata Pańczyk

Podstawy (X)HTML i CSS

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1

HTML, Javascript, CSS oraz Bootstrap

Zajęcia 4 - Wprowadzenie do Javascript

TECHNIKI WWW (WFAIS.IF-C125) (zajęcia r.)

Infrastruktura aplikacji WWW

rdf:type ex:homepage ex:createdwith /amaya rdf:type ex:htmleditor

Audio i Video w HTML5

Budowa dokumentu HTML 5

XML Schema. Bartłomiej Świercz. Łódź, 19 listopada 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz XML Schema

Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.

Celem ćwiczenia jest zapoznanie z językiem HTML i JavaScript, zasadami tworzenia stron WWW i umieszczania na nich skryptów w języku JavaScript.

Zdarzenia Zdarzenia onload i onunload

Programowanie w Sieci Internet o HTML 5 i CSS 3.0 słów kilka. Kraków, 17 października 2014 mgr Piotr Rytko Wydział Matematyki i Informatyki UJ

DOM (Document Object Model)

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

HTML, CSS i JavaScript / Laura Lemay, Rafe Colburn, Jennifer Kyrnin. Gliwice, cop Spis treści

Szczegółowy opis zamówienia:

Rys.2.1. Drzewo modelu DOM [1]

2. Prezentacja wizualna

CouchDB. Michał Nowikowski

TIN Techniki Internetowe zima

Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Wybrane działy Informatyki Stosowanej

Przykładowy dokument XML

XML extensible Markup Language. część 5

Osadzanie playera Video CMS na Facebooku

HTML. Tim Berners-Lee

Rola języka XML narzędziem

Aplikacje internetowe

Semantic Web Internet Semantyczny

HTML (HyperText Markup Language) hipertekstowy język znaczników

Podstawowe konstrukcje Podstawowymi konstrukcjami są wzorce element oraz attribute:

OfficeObjects e-forms

FORMULARZE Formularz ma formę ankiety, którą można wypełnić na stronie. Taki formularz może być np. przesłany pocztą elektroniczną .

Pierwsza strona internetowa

XML extensible Markup Language. część 5

PROJEKTOWANIE STRON WWW W4

HTML DOM, XHTML cel, charakterystyka

NTW - Bezp. sieci Lista nr 1 mgr inż. Adam Dudek

AUDYT DOSTĘPNOŚCI STRONY INTERNETOWEJ

Repozytorium Zasobów Wiedzy FTP

Specyfikacja API 1.0. Specyfikacja kontroli Konta systemu CashBill z wykorzystaniem API opartego na REST

Transkrypt:

XHTML2 i HTML5 Przyszłość WWW oparta o nowe standardy sieciowe HTML5 i XHTML2 mgr inż. Dominik Tomaszuk Uniwersytet w Białymstoku

XHTML2

XML XHTML2 to aplikacja XML a, która nie daje innych możliwości parsowania Struktura XHTML2 jest zapisana w RELAX NG i XML Schema XHTML2 silnie wykorzystuje technologie XML

xml:id i xml:base xml:id to predefiniowany atrybut o typie identyfikatora (m.in. musi być unikalny) odpowiednik ID z DTD xml:base to predefiniowany atrybut określający ścieżkę bazową może być używany w hiperłączach prostych oraz zawartości wstawianej, odpowiednik starego znacznika <base/>

RDFa RDFa czyli RDF w atrybutach Celem RDF jest umożliwienie maszynowego przetwarzania abstrakcyjnych opisów zasobów w sposób automatyczny Opis zasobu za pomocą trzech elementów: podmiotu, predykatu i obiektu RDFa to jedna z notacji RDF

RDFa RDF Schema i OWL są językami reprezentacji danych RDF Schema i OWL są oparte o RDF oraz mogą być zapisane w składni RDFa Dostęp do RDF może odbywać się przez język zapytań SPARQL Nowe atrybuty: about, rel/rev, href/src/resource, property, content, datatype, typeof

XMLNS XMLNS to przestrzenie nazw w XML XMLNS pozwalają korzystać z kilku aplikacji XML w obrębie jednego dokumentu XMLNS w RDFa wykorzystywane są do definiowania słowników, np. Dublin Core, FOAF i DOAP <div xmlns:dc="http://purl.org/dc/elements/1.1/" about="#prezentacja"> <span property="dc:creator">dominik Tomaszuk</span> </div>

access i role Element access to rozszerzenie koncepcji atrybutu accesskey i lepsze rozwiązania dla dostępności WAI Atrybut role to klasyfikacja roli elementów w XHTML u Taksonomia w rolach jest zdefiniowana w RDF i OWL <access targetrole="navigation" key="m"/> <div role="navigation">menu...</div>

access i role Atrybut role wykorzystuje koncepcje specyfikacji ARIA w celu dostępności dynamicznej zawartości dla osób niepełnosprawnych. Access i role korzystają z CURIE CURIE to rozszerzenie wartości atrybutów o XMLNS CURIE wykorzystywane są również w RDFa i SPARQL

XForms XForms to nie tylko formularze, XForms to model przetwarzania XML i język opisu interfejsu użytkownika XForms wykorzystuje wzorzec MVC (model widok kontroler) XForms to walidacja formularzy dzięku typom danych XML Schema (w tym przez wyrażenia regularne) Prywatność dzięki P3P, dostęp dzięki XPath

XForms <model> <!-- model --> <instance> <data xmlns=""><q/></data> </instance> <submission action="s.php" method="get" id="s"/> </model> <!-- widok --> <input ref="q"><label>szukaj</label></input> <submit submission="s"><label>znajdź</label></submit>

XML Events XML Events służy do obsługi zdarzeń i współpracy ze skryptami, np w JavaScript Każda zmiana zdarzenia wiąże się tylko ze zmianą skryptu <ev:listener observer="pomoc" handler="#pokaz" event="domactivate"/> <handler id="pokaz" type="text/javascript"> pokaz(); </handler> <trigger id="pomoc">pomoc</trigger>

XML Events Jedno zdarzenie nie musi być związane z jednym językiem skryptowym <input type="submit"> <handler ev:event="domactivate" type="text/javascript"> validate(); </handler> <handler ev:event="domactivate" type="text/python"> validate </handler> <handler ev:event="domfocusin" type="text/ javascript"> help(); </handler> </input>

Nowe elementy Sekcje i nagłówki (działy) Separatory Nowe wiersze <section> <h>xhtml2</h>, <l>xhtml2</l> <l>służy do tworzenia stron internetowych.</l> <separator /> </section>

Nowe elementy Blok kodu Listy nawigacyjne <nl> <label>menu</label> <li href="xhtml2.html">xhtml2</li> <li href="html5.html">html5</li> </nl>

Nowe atrybuty Wyglądy Edycje Hipertekst dla każdego elementu <p layout="relevant" href="http://www.uwb.edu.pl/" hreflang="pl" hrefmedia="screen"> Uniwersytet w </p> Białymstoku

Nowe atrybuty Nowy dwukierunkowy tekst (wraz z notacją rubinową) to ulepszenie internacjonalizacji Osadzanie dla każdego elementu <p src="budynek" type="image/png, image/gif" xml:lang="pl" dir="ltr">budynek Uniwersytetu.</p>

HTML5

HTML5 dwa języki Specyfikacja określa dwa sposoby parsowania: pseudo SGML HTML5 XML XHTML5 Obsługa xml:base i xml:lang tylko XHTML5 Obsługa XMLNS tylko XHTML5 Obsługa document.write() i document.writeln() tylko HTML5

HTML5 dwa języki Typy MIME: text/html HTML5, application/xml lub application/xhtml+xml XHTML5 Brak RCDATA w XHTML5 (elementy title i textarea) DOCTYPE w HTML5 wymagany, w XHTML5 opcjonalny Element noscript tylko w HTML5 W XHTML5 domyślne kodowanie to UTF 8 lub UTF 16

Microdata Microdata to uboższy RDFa dla HTML5 Microdata służy do opisywania treści dla odczytu maszynowego Microdata to grupy par nazwa wartość Dwa atrybuty item i itemprop <section item="org.example.uczelnia"> <h1 itemprop="nazwa">uniwersytet w Białymstoku</h1> </section>

Microdata Microdata to predefiniowane słowniki: vcard, vevent oraz wartości do określania licencji Microdata pozwala na konwersje do JSON, RDF, vcard, icalendar, Atom <div item="vcard"> <span itemprop="fn">dominik Tomaszuk</span> <p itemprop="org" item> <span itemprop="organization-name">uniwersytet w Białymstoku</span> </p> </div>

Nowe API API do elementu canvas, API odtwarzania wideo i audio elementy video i audio), API do trwałego składowania (klucz wartość i bazy danych SQL), API do trybu offline aplikacjach webowych, API do rejestrowania przez aplikacje webowe protokołów i mediów,

Nowe API API do edycji (atrybut contenteditable), API do drag & drop (atrybut draggable), API do gniazdek webowych, API do obsługi historii, API do wiadomości cross document, API do wysyłania zdarzeń (element eventsource).

Nowe API /* odtwarzanie wideo */ var v = document.getelementsbytagname("video")[0]; v.play(); /* trwałe składowanie klucz-wartość */ sessionstorage.imie = "Dominik"; alert( "imie = " + sessionstorage.imie ); /* tryb offline w aplikacjach webowych */ alert(navigator.online? "Jesteś online" : "Jesteś offline");

Rozszerzenia API getelementsbyclassname() aby wybrać elementy poprzez ich nazwę klasy innerhtml aby serializować dokumenty activeelement oraz hasfocus aby określić który element jest w danym momencie aktywny getselection() zwraca obiekt reprezentujący aktualny wybór designmode i execcommand() często stosowane do edycji dokumentów

Nowe elementy section article aside header footer nav

Nowe elementy dialog figure audio i video embed meter time <video autoplay> <source src="film.ogg" type="video/ogg"> </video>

Nowe elementy canvas details datalist eventsource keygen output <input list="jezyki"> <datalist id="jezyki"> <option value="html5"> </datalist>

Nowe atrybuty @ping @charset, @autofocus @form @autocomplete, @min, @max, @pattern, @step @async <meta charset="utf-8">

Nowe atrybuty @manifest @contenteditable @contextmenu, @draggable @hidden @data * @role, @aria * (role i ARIA)

Nowe atrybuty <label> ID: <input pattern="[0-9][a-z]{3}" name="id" autocomplete="off"> </label> <div contenteditable="true">witam!</div> <span data-wzrost="cm">180</span> <script src="skrypt.js" async></script>

Podobieństwa Usunięcie elementów prezentacji Listy nawigacyjne Bardziej dopasowane formularze (więcej kontrolek, walidacja) Bardziej semantyczny język znaczników Wprowadzenie elementów do notacji rubinowej Wsparcie dla ARIA i role

Główna różnica HTML5 to ewolucja, XHTML2 to rewolucja

Koniec Dziękuję i proszę o pytania

XHTML2 i HTML5 Przyszłość WWW oparta o nowe standardy sieciowe HTML5 i XHTML2 mgr inż. Dominik Tomaszuk Uniwersytet w Białymstoku 1

XHTML2 Kliknij, aby dodać konspekt 2

XML XHTML2 to aplikacja XML a, która nie daje innych możliwości parsowania Struktura XHTML2 jest zapisana w RELAX NG i XML Schema XHTML2 silnie wykorzystuje technologie XML 3

xml:id i xml:base xml:id to predefiniowany atrybut o typie identyfikatora (m.in. musi być unikalny) odpowiednik ID z DTD xml:base to predefiniowany atrybut określający ścieżkę bazową może być używany w hiperłączach prostych oraz zawartości wstawianej, odpowiednik starego znacznika <base/> 4

RDFa RDFa czyli RDF w atrybutach Celem RDF jest umożliwienie maszynowego przetwarzania abstrakcyjnych opisów zasobów w sposób automatyczny Opis zasobu za pomocą trzech elementów: podmiotu, predykatu i obiektu RDFa to jedna z notacji RDF 5

RDFa RDF Schema i OWL są językami reprezentacji danych RDF Schema i OWL są oparte o RDF oraz mogą być zapisane w składni RDFa Dostęp do RDF może odbywać się przez język zapytań SPARQL Nowe atrybuty: about, rel/rev, href/src/resource, property, content, datatype, typeof 6

XMLNS XMLNS to przestrzenie nazw w XML XMLNS pozwalają korzystać z kilku aplikacji XML w obrębie jednego dokumentu XMLNS w RDFa wykorzystywane są do definiowania słowników, np. Dublin Core, FOAF i DOAP <div xmlns:dc="http://purl.org/dc/elements/1.1/" about="#prezentacja"> <span property="dc:creator">dominik Tomaszuk</span> </div> 7

access i role Element access to rozszerzenie koncepcji atrybutu accesskey i lepsze rozwiązania dla dostępności WAI Atrybut role to klasyfikacja roli elementów w XHTML u Taksonomia w rolach jest zdefiniowana w RDF i OWL <access targetrole="navigation" key="m"/> <div role="navigation">menu...</div> 8

access i role Atrybut role wykorzystuje koncepcje specyfikacji ARIA w celu dostępności dynamicznej zawartości dla osób niepełnosprawnych. Access i role korzystają z CURIE CURIE to rozszerzenie wartości atrybutów o XMLNS CURIE wykorzystywane są również w RDFa i SPARQL 9

XForms XForms to nie tylko formularze, XForms to model przetwarzania XML i język opisu interfejsu użytkownika XForms wykorzystuje wzorzec MVC (model widok kontroler) XForms to walidacja formularzy dzięku typom danych XML Schema (w tym przez wyrażenia regularne) Prywatność dzięki P3P, dostęp dzięki XPath 10

XForms <model> <!-- model --> <instance> <data xmlns=""><q/></data> </instance> <submission action="s.php" method="get" id="s"/> </model> <!-- widok --> <input ref="q"><label>szukaj</label></input> <submit submission="s"><label>znajdź</label></submit> 11

XML Events XML Events służy do obsługi zdarzeń i współpracy ze skryptami, np w JavaScript Każda zmiana zdarzenia wiąże się tylko ze zmianą skryptu <ev:listener observer="pomoc" handler="#pokaz" event="domactivate"/> <handler id="pokaz" type="text/javascript"> pokaz(); </handler> <trigger id="pomoc">pomoc</trigger> 12

XML Events Jedno zdarzenie nie musi być związane z jednym językiem skryptowym <input type="submit"> <handler ev:event="domactivate" type="text/javascript"> validate(); </handler> <handler ev:event="domactivate" type="text/python"> validate </handler> <handler ev:event="domfocusin" type="text/ javascript"> help(); </handler> </input> 13

Nowe elementy Sekcje i nagłówki (działy) Separatory Nowe wiersze <section> <h>xhtml2</h>, <l>xhtml2</l> <l>służy do tworzenia stron internetowych.</l> <separator /> </section> 14

Nowe elementy Blok kodu Listy nawigacyjne <nl> <label>menu</label> <li href="xhtml2.html">xhtml2</li> <li href="html5.html">html5</li> </nl> 15

Nowe atrybuty Wyglądy Edycje Hipertekst dla każdego elementu <p layout="relevant" href="http://www.uwb.edu.pl/" hreflang="pl" hrefmedia="screen"> Uniwersytet w </p> Białymstoku 16

Nowe atrybuty Nowy dwukierunkowy tekst (wraz z notacją rubinową) to ulepszenie internacjonalizacji Osadzanie dla każdego elementu <p src="budynek" type="image/png, image/gif" xml:lang="pl" dir="ltr">budynek Uniwersytetu.</p> 17

HTML5 18

HTML5 dwa języki Specyfikacja określa dwa sposoby parsowania: pseudo SGML HTML5 XML XHTML5 Obsługa xml:base i xml:lang tylko XHTML5 Obsługa XMLNS tylko XHTML5 Obsługa document.write() i document.writeln() tylko HTML5 19

HTML5 dwa języki Typy MIME: text/html HTML5, application/xml lub application/xhtml+xml XHTML5 Brak RCDATA w XHTML5 (elementy title i textarea) DOCTYPE w HTML5 wymagany, w XHTML5 opcjonalny Element noscript tylko w HTML5 W XHTML5 domyślne kodowanie to UTF 8 lub UTF 16 20

Microdata Microdata to uboższy RDFa dla HTML5 Microdata służy do opisywania treści dla odczytu maszynowego Microdata to grupy par nazwa wartość Dwa atrybuty item i itemprop <section item="org.example.uczelnia"> <h1 itemprop="nazwa">uniwersytet w Białymstoku</h1> </section> 21

Microdata Microdata to predefiniowane słowniki: vcard, vevent oraz wartości do określania licencji Microdata pozwala na konwersje do JSON, RDF, vcard, icalendar, Atom <div item="vcard"> <span itemprop="fn">dominik Tomaszuk</span> <p itemprop="org" item> <span itemprop="organization-name">uniwersytet w Białymstoku</span> </p> </div> 22

Nowe API API do elementu canvas, API odtwarzania wideo i audio elementy video i audio), API do trwałego składowania (klucz wartość i bazy danych SQL), API do trybu offline aplikacjach webowych, API do rejestrowania przez aplikacje webowe protokołów i mediów, 23

Nowe API API do edycji (atrybut contenteditable), API do drag & drop (atrybut draggable), API do gniazdek webowych, API do obsługi historii, API do wiadomości cross document, API do wysyłania zdarzeń (element eventsource). 24

Nowe API /* odtwarzanie wideo */ var v = document.getelementsbytagname("video")[0]; v.play(); /* trwałe składowanie klucz-wartość */ sessionstorage.imie = "Dominik"; alert( "imie = " + sessionstorage.imie ); /* tryb offline w aplikacjach webowych */ alert(navigator.online? "Jesteś online" : "Jesteś offline"); 25

Rozszerzenia API getelementsbyclassname() aby wybrać elementy poprzez ich nazwę klasy innerhtml aby serializować dokumenty activeelement oraz hasfocus aby określić który element jest w danym momencie aktywny getselection() zwraca obiekt reprezentujący aktualny wybór designmode i execcommand() często stosowane do edycji dokumentów 26

Nowe elementy section article aside header footer nav 27

Nowe elementy dialog figure audio i video embed meter time <video autoplay> <source src="film.ogg" type="video/ogg"> </video> 28

Nowe elementy canvas details datalist eventsource keygen output <input list="jezyki"> <datalist id="jezyki"> <option value="html5"> </datalist> 29

Nowe atrybuty @ping @charset, @autofocus @form @autocomplete, @min, @max, @pattern, @step @async <meta charset="utf-8"> 30

Nowe atrybuty @manifest @contenteditable @contextmenu, @draggable @hidden @data * @role, @aria * (role i ARIA) 31

Nowe atrybuty <label> ID: <input pattern="[0-9][a-z]{3}" name="id" autocomplete="off"> </label> <div contenteditable="true">witam!</div> <span data-wzrost="cm">180</span> <script src="skrypt.js" async></script> 32

Podobieństwa Usunięcie elementów prezentacji Listy nawigacyjne Bardziej dopasowane formularze (więcej kontrolek, walidacja) Bardziej semantyczny język znaczników Wprowadzenie elementów do notacji rubinowej Wsparcie dla ARIA i role 33

Główna różnica HTML5 to ewolucja, XHTML2 to rewolucja 34

Koniec Dziękuję i proszę o pytania 35