Środowisko publikacyjne oparte na XML-u. Szymon Zioło 1 maja 2004



Podobne dokumenty
Cocoon środowisko publikacyjne oparte na XML-u

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

Szczegółowy opis zamówienia:

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

Oracle Application Express -

Wykorzystywanie parsera DOM w programach Java i PL/SQL

dlibra 3.0 Marcin Heliński

Języki i narzędzia programowania III. Łukasz Kamiński Wykład II

Nowoczesne aplikacje internetowe w praktyce

Wybrane działy Informatyki Stosowanej

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

Dostosowywanie wyglądu aplikacji czytelnika w oparciu o oprogramowanie dlibra 5.0

Być może jesteś doświadczonym programistą, biegle programujesz w Javie,

Aplikacje WWW Wprowadzenie

Serwis prównujący ceny z wielu sklepów internetowych

WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ

Generated by Foxit PDF Creator Foxit Software For evaluation only. System Szablonów

katalog Usługi internetowe SERWERY WIRTUALNE

WPROWADZENIE. Użycie PHP

Liczba godzin. N (nauczyciel) studia niestacjonarne

OpenLaszlo. OpenLaszlo

Referat Pracy Dyplomowej

Tworzenie aplikacji GIS w technologii Flex. Tomasz Turowski Esri Polska

Zdalna edycja i przeglądanie dokumentacji medycznej.

INSTYTUT INFORMATYKI. Studium podyplomowe Technologie Internetowe i Mobilne

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Projektowanie i implementacja wysokowydajnych aplikacji w języku

Aplikacje Internetowe, Servlety, JSP i JDBC

Apache i okolice... Jacek Prucia jacek.prucia@7bulls.com

Projektowanie, tworzenie aplikacji mobilnych na platformie Android

CENNIK I TERMINARZ SZKOLEŃ SZKOLENIA OTWARTE DLA UŻYTKOWNIKÓW SYSTEMÓW INFORMATYCZNYCH

Aplikacje Internetowe

Podstawy technologii WWW

Kandydaci powinni spełniać warunki określone w Ustawie z dnia 27 lipca 2005 r. Prawo o Szkolnictwie Wyższym ( Dz. U. z 2012 r. poz. 572).

Webowy generator wykresów wykorzystujący program gnuplot

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia

Nazwa Platforma Wspierane bazy danych Ostatnia stabilna wersja

PRZEWODNIK PO PRZEDMIOCIE

ROZDZIAŁ I. BUDOWA I FUNKCJONOWANIE KOMPUTERA PC

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

INSTRUKCJA INSTALACJI DATAMOBILE. Ver. 1.3

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Metryki. Narzędzia do pomiaru złożoności modułowej i międzymodułowej oprogramowania. autor: Zofia Kruczkiewicz

autor poradnika - KS Jak zamieszczać i edytować artykuły na szkolnej stronie internetowej

WOJEWÓDZTWO PODKARPACKIE

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

1. Metryki złożoności modułowej i międzymodułowej Chidamber & Kemerer (CK)

Pracownia internetowa w szkole ZASTOSOWANIA

Aplikacje internetowe i mobilne (studia tradycyjne)

PRÓBNY EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE CZĘŚĆ PRAKTYCZNA

SOA Web Services in Java

XML i nowoczesne technologie zarządzania treścią

MŁODSZY SPECJALISTA DS. OBSŁUGI KLIENTA Z JĘZYKIEM NIEMIECKIM Miejsce pracy: Piotrków Trybunalski nr ref. DOK/2017

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite

Tomasz Grześ. Systemy zarządzania treścią, cz. II

Bazy danych i strony WWW

Tworzenie katalogu wirtualnego w Internetowych usługach informacyjnych (IIS)

1 Wprowadzenie do J2EE

Wybrane działy Informatyki Stosowanej

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski

METODY REPREZENTACJI INFORMACJI

Po zrealizowaniu materiału student będzie w stanie korzystać z usługi RSS oferowanej na stronach www utworzyć kanał RSS na stronie www

Porównanie wersji Pajączka

Rodzaje przetwarzania XSLT (1)

Spotkanie robocze PIONIER-CERT Poznań, Tomasz Nowak Zespół Bezpieczeństwa PCSS

Perl a XML. Narzędzia informatyczne w językoznawstwie. Generowanie danych XML - Przykład. Generowanie danych XML. Perl - Przetwarzanie XML

WYMAGANIA EDUKACYJNE. Programowanie Aplikacji Internetowych klasa III

Mapa witryny - Poradnik od A do Z

Flex 3. Piotr Strzelczyk Wydział EAIiE Katedra Automatyki. Kraków, 2008

Wymagania na poszczególne oceny w klasach 3 gimnazjum

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

Przewodnik instalacji i rozpoczynania pracy. Dla DataPage+ 2013

Zalogowanie generuje nowe menu: okno do wysyłania plików oraz dodatkowe menu Pomoc

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Wymagane jest podłączenie serwera do Internetu (konieczne do zdalnego dostępu).

Aplikacje WWW - laboratorium

Aplikacje WWW i PHP - opis przedmiotu

Wymagania edukacyjne: Statyczne witryny internetowe (na podstawie programu nr )

Imię, nazwisko i tytuł/stopień KOORDYNATORA (-ÓW) kursu/przedmiotu zatwierdzającego protokoły w systemie USOS Dr Adam Naumowicz

Odseparowanie kodu PHP i warstwy prezentacji od dawna było celem

ZAPYTANIE OFERTOWE NR 01/2012/IMF

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU. studia pierwszego stopnia

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: Aukcjomat

Przewodnik instalacji i rozpoczynania pracy. dla DataPage+ 2012

Serwis e-kiosk: szansa samodzielnego dostępu osób niewidomych i słabowidzących do treści czasopism. Zaproszenie do współpracy.

The Binder Consulting

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

znajomość języka programowania w stopniu podstawowym (np. C/C++, Java), umiejętność obsługi aplikacji Excel, OpenOffice Calc, itp.

Programowanie obiektowe zastosowanie języka Java SE

XML materiały dydaktyczne - Kurs Podstawowy XSL - wprowadzenie. XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO).

Systemy internetowe Wykład 6 Architektura WWW - cd

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

JBoss Application Server

Pozdrawiam Andrzej Wegner, Consensus. Firma Usługowa.

Java Server Faces - wprowadzenie

Tematyka szkoleń z zakresu stosowania technologii informacyjnych w edukacji

Transkrypt:

Środowisko publikacyjne oparte na XML-u Szymon Zioło 1 maja 2004

Przygotowywanie serwisu internetowego Role biznesowe: redakcja treści (autor), styl, redakcja graficzna (grafik), organizacja witryny (redaktor). Brak jasnego podziału konflikty: autor grafik, redaktor grafik, autor - redaktor.

Serwisy internetowe od strony technicznej Wygląd połączony z danymi. Skrypty generujące stronę w Perlu, PHP, ASP zawierające kawałki kodu HTML. Niedoskonały język komunikacji HTML. Strona WWW nie może być źródłem informacji dla innego komputera.

XML rozwiązanie konfliktu autor grafik <osoba>król</oso <wypowiedź>pytam cię Hamlecie: gdzie jes Poloniusz?</wypowie <osoba>hamlet<oso <wypowiedź>na lacji</wypowie arkusz stylów XSL Król Pytam cię Hamlecie: gdzie jest Poloniusz? Hamlet Na kolacji. autor grafik

Cocoon separacja kompetencji Zarządzanie Logika Treść Styl Źródło: Introducing Cocoon, The Apache Cocoon Project, http://cocoon.apache.org/2.1/introduction.html

SAX dokument XML jako ciąg zdarzeń SAX - Simple API for XML: standardowe API do przetwarzania dokumentów XML: uwalnia od żmudnego programowania analizy leksykalnej i składniowej; metoda reprezentacji dokumentu XML jako ciągu zdarzeń. <sztuka> <osoba>król</osoba> <wypowiedź>pytam cię Hamlecie: gdzie jest Poloniusz?</wypowiedź> <osoba>hamlet<osoba> <wypowiedź>na kolacji </wypowiedź> </sztuka> startdocument() startelement("sztuka", []) startelement("osoba", []) characters("król") endelement("osoba") startelement("wypowiedź", []) characters("pytam cię Hamlecie...") endelement("wypowiedź") startelement("osoba", []) characters("hamlet") endelement("osoba") startelement("wypowiedź", [])...

Cocoon model przetwarzania generator transformator transformator transformator serializer

Gotowe komponenty Generatory: z pliku, z katalogu w systemie plików, HTML generator, search generator,... Transformatory: XSLT, SQL, XInclude, i18n (internationalization),... Serializery: HTML, XML, SVG, PDF,...

Idea realizacji separacji kompetencji Bazy danych XML TXT HTML Pliki XML Artykuł XML Nagłówek XML Konfiguracja XML Wynikowy XSL Serwer WWW Przeglądarka Inne źródła

http://mysite.pl/info.wap Jedno źródło różne publikacje Możliwość konfiguracji różnych łańcuchów przetwarzania dla różnych formatów. Dynamiczne generowanie dokumentu w żądanym formacie. http://mysite.pl/info.html http://mysite.pl/info.pdf

Wydajność Możliwość cache'owania zapytań do Cocoona. Wybrane komponenty wspierające cache'owanie: generator z pliku, transformator XSLT, serializery. Algorytmy cache'owania: domyślny: zapamiętywanie wyników łańcucha przetwarzania dokąd jest to możliwe (aż nie napotkamy komponentu nie wspierającego cache'owania), cache'owanie sterowane czasem, np. access plus 2 minutes generator z pliku transformator XSLT transformator SQL transformator XSLT serializer

Proste zastosowanie: książka kucharska Przepisy kulinarne: dokumenty XML, składowane w wybranym katalogu jako pliki. Funkcjonalność aplikacji: lista przepisów, linki do przepisów, treść przepisu w czytelnej formie.

Pokaz na żywo! Konfiguracja wykorzystana w pokazie: Java 2 SDK, Standard Edition 1.3.1_08, Apache Tomcat 3.3.1a, Apache Cocoon 2.0.4. Źródło przepisów: Wirtualna Kuchnia Polska, http://kuchnia.verusinter.net

Przetwarzanie przepisu generator z pliku XSLT przepis2html.xsl serializer HTML

Przetwarzanie listy przepisów generator z katalogu XSLT dir2include.xsl XInclude XSLT include2html.xsl serializer HTML

Transformator XInclude Przed: <?xml version="1.0" encoding="utf-8"?> <directory xmlns:xi="http://www.w3.org/ 2001/XInclude" xmlns:dir="http://apache.org/ cocoon/directory/2.0"> <file name="salatka.xml"> <xi:include href="salatka.xml# xpointer(/przepis/tytul)"/> </file> <file name="pierogi_z_baranina.xml"> <xi:include href= "Pierogi_z_baranina.xml# xpointer(/przepis/tytul)"/> </file> <file name="bliny_na_piwie.xml"> <xi:include href= "Bliny_na_piwie.xml# xpointer(/przepis/tytul)"/> </file> </directory> Po: <?xml version="1.0" encoding="utf-8"?> <directory xmlns:xi="http://www.w3.org/ 2001/XInclude" xmlns:dir="http://apache.org/ cocoon/directory/2.0"> <file name="salatka.xml"> <tytul>sałatka z ogórków</tytul> </file> <file name="pierogi_z_baranina.xml"> <tytul>pierogi z baraniną i szynką w cieście drożdżowym</tytul> </file> <file name="bliny_na_piwie.xml"> <tytul>bliny na piwie</tytul> </file> </directory>

Dziękuję!