Literatura. Głównie informacje w sieci:
|
|
- Przybysław Brzeziński
- 9 lat temu
- Przeglądów:
Transkrypt
1 XML DTD XSLT
2 Literatura Głównie informacje w sieci:
3 SGML (ang. Standard Generalized Markup Language) Standardowy uogólniony język znaczników służący do ujednolicania struktury i formatu różnego typu informacji (danych). Nie jest zbiorem określonych znaczników i reguł ich użytkowania, lecz ogólnym, nadrzędnym językiem służącym do definiowania dowolnych znaczników i ustalania zasad ich poprawnego użytkowania. Pozwala zapisać je w formie dokumentu tekstowego Łatwa przenośność Ujednolicania zasad pisania i przekazywania dokumentów tekstowych w obrębie dużych firm lub instytucji. Źródło: wikipedia 3
4 SGML Dokument w SGML'u składa się zwykle z 3 części deklaracji dokumentu, która definiuje ogólne reguły stosowane w zapisie dokumentu (np. maksymalna długość nazwy elementu, znak używany jako początek znacznika (domyślnie jest to znak < ) DTD definicji typu dokumentu, czyli definicji wszystkich znaczników i reguł ich stosowania właściwego dokumentu tekst wraz ze znacznikami. Źródło: wikipedia 4
5 SGML Ze względu na olbrzymią złożoność SGML mało który edytor pozwala na pełną obsługę standardu. Ze względu na olbrzymią złożoność SGML mało który edytor pozwala na pełną obsługę standardu. Zwykle deklaracja dokumentu SGML jak i DTD ukryte są najczęściej w oprogramowaniu, tak jak jest to w przypadku HTML'a Źródło: wikipedia 5
6 XML XML (ang. Extensible Markup Language) uniwersalny język formalny przeznaczony do reprezentowania różnych danych w ustrukturalizowany sposób Został zaprojektowany do przekazywania i przechowywania danych Jest niezależny od platformy Łatwa wymiana dokumentów pomiędzy różnymi systemami Jest podzbiorem SGML Jest rekomendowany oraz specyfikowany przez organizację W3C (World Wide Web Consortium) Źródło: wikipedia 6
7 XML Różnica pomiędzy XMLem a HTMLem jest taka, że HTML został zaprojektowany by pokazywać dane i główny nacisk jest położony na to jak one wyglądają XML przeznaczony jest do przechowywania danych, tu skupiono się jak dane mają być przechowane lub przekazane. XML jest czystym tekstem, opisującym samego siebie. Jednak do prezentowania lub przesyłania trzeba napisać dodatkowe oprogramowanie. <?xml version="1.0" encoding="utf-8"?> <list> <od>jak Kowalski</od> <do>anna Nowak</do> <temat>wyznanie</temat> <tresc>już Cie nie kocham</tresc> </list> Źródło: wikipedia 7
8 XML Wiele nowych Internetowych języków powstało z XMLa XHTML jest standardem HTML bazującym na XMLu. WSDL - Opis web serwisów WAP i WML - stosowane w urządzeniach przenośnych (handheld devices) RSS dostarczanie wiadomości RDF i OWL stosowane w hierarhizowaniu i kategoryzowaniu zasobów sieci WWW SMIL - (Synchronized Multimedia Integration Language) jest standardem zalecanym przez W3C do opisu prezentacji multimedialnych z wykorzystaniem XML Źródło: wikipedia 8
9 XML XML nie ma predefiniowanych tagów, użytkownik sam sobie wymyśla: <list> <od> <do> <temat> <tresc> nie jest jakimś standardem. HTML posiada predefiniowane tagi np. <body> <title> <head> <meta> XML jest strukturą drzewiastą Posiada korzeń (główny tag zwany rootem) Gałęzie Liście W XMLu wyróżniamy też Potomka, przodka, rodzeństwo Zawartość może być tekstem lub elementem <root> <child age= 55 > <subchild>tekst1</subchild> <subchild>tekst2</subchild> </child> </root> XML posiada też atrybuty Źródło: 9
10 XML Dokument jest poprawny składniowo (ang. well-formed), jeżeli jest zgodny z regułami składni XML. Np. w odróżnieniu od HTML'a XML wymaga domykania znaczników Posiada tag główny (root) Poprawny składniowo nie zawsze oznacza poprawny strukturalnie Dokument jest poprawny strukturalnie (ang. Valid) jeżeli jest poprawny składniowo oraz zgodny z definicją dokumentu. tzn. dodatkowymi regułami określonymi przez użytkownika. Do tego celu służy język DTD. Źródło: wikipedia 10
11 XML - składnia Wszystkie elementy muszą mieć tag zamykający, nie poprawne jest np. <p>paragraf <p>drugi paragraf poprawny zapis to: <p>paragraf poprawny</p> Trzeba zauważyć że deklaracja <?xml version="1.0" encoding="utf-8"?> nie jest częścią dokumentu XML więc nie jest błędem że nie posiada domknięcia Tagi XML rozróżniają wielkość liter <tag> oraz <Tag> to dwa różne tagi. Źródło: 11
12 XML - składnia Tagi muszą być poprawnie zagnieżdżone <b><i>nie poprawnie</b></i> tak można w HTMLu <b><i>poprawnie</i></b> Wszystkie dokumenty XML muszą mieć główny tag będący rodzicem wszystkich innych tagów (root) XML nie scala białych znaków Źródło: 12
13 XML - składnia Niektóre znaki są kluczowe (podmioty, ENTITIES) w składni XML i trzeba zastąpić innymi: <wzor> 1+3 < 5 </wzor> źle, parser < rozpoznał by jako nowy tag. <wzor> 1+3 < </wzor> dobrze < < > > & & " " ' ' Źródło: 13
14 XML - elementy Element to wszystko od tagu początkowego do tagu końcowego, łącznie z tymi tagami Elementy mogą zawierać inne elementy, tekst lub jedno i drugie. Elementy są rozszerzalne. Jeżeli autor dokumentu XML doda kilka elementów to aplikacja która obsługiwała poprzednią wersję dokumentu powinna nadal działać. Owszem może ewentualnie nie wyświetlić pewnych danych ale nie powinna się wywalić. Źródło: 14
15 Nazewnictwo XML - elementy Dobre rady Mogą zawierać liczby, cyfry i inne znaki Nie mogą zaczynać się od cyfry czy znaku interpunkcyjnego Nie mogą zaczynać się od liter XML Xml xml itp. Nie mogą zawierać spacji Nazwy powinny być krótkie i treściwe Raczej unikać znaków (minus) gdyż inne programy mogą interpretować to jako odejmowanie Unikać. (kropek) inne programy czasami interpretują to jako oddzielenie metody od obiektu : (dwukropek) używany jest przy przestrzeniach nazw Pomimo pełnej obsługi polskich znaków w standardzie XML czasami możemy mieć problemy w programach które nie wspierają w pełni XML'a Źródło: 15
16 XML - składnia Elementy mogą zawierać atrybuty Atrybuty tagów muszą być w cudzysłowach lub apostrofach ' <info data= > źle </info> <info data= >dobrze </info> Jeżeli w atrybucie ma wystąpić cudzysłów to można to zrealizować na dwa sposoby <info atr=' to jest cytat jakis'> <info atr= to jest "cytat" jakis > Źródło: 16
17 Elementy a atrybuty Mimo iż zapis oraz XML - składnia <osoba wiek="20"> <imie>jan</imie> <nazwisko>kowalski</nazwisko> </osoba> <osoba> <wiek>20</wiek> <imie>jan</imie> <nazwisko>kowalski</nazwisko> </osoba> Zawiera takie same dane i w stosowaniu atrybutów panuje pewna dowolność, bardziej eleganckim wydaje się stosowanie ich tylko jako identyfikatorów rekordu Źródło: 17
18 DTD Definicja Typu Dokumentu rodzaj dokumentu definiujący formalną strukturę dokumentów HTML, XML, XHTML lub innych z rodziny SGML. Mogą być zawarte w dokumencie który definiują lub w osobnym pliku zwykle z rozszerzeniem dtd. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE ksiazka-telefoniczna [ <!ELEMENT ksiazka-telefoniczna (osoba*)> <!ATTLIST ksiazka-telefoniczna kategoria CDATA "domyslny"> <!ELEMENT osoba (imie,nazwisko,telefon)> <!ATTLIST osoba charakter CDATA "lagodny"> <!ELEMENT imie (#PCDATA)> <!ELEMENT nazwisko (#PCDATA)> <!ELEMENT telefon (#PCDATA)> ]>... Źródło: wikipedia 18
19 DTD XML z punktu widzenia DTD składa się z: Elementów [ELEMENTS] Atrybutów [ATTRIBUTES] Encji/podmiotów [ENTITIES] Danych znakowych parsowanych [PCDATA] Danych znakowych nie parsowanych [CDATA] Źródło: 19
20 DTD kilka przykładów <!ELEMENT br EMPTY> - pusty element <br/> <!ELEMENT nasz-element1 (#PCDATA)> - zdefiniowanie elementu naszelement1 który zawiera dane parsowane <!ELEMENT nasz-element2 ANY> - zdefiniowanie elementu nasz-element2 który może zawierać dowolne elementy lub dane. <!ELEMENT nasz-element3 (dziecko1,dziecko2)> - element o nazwie naszelement3 który ma 2 i tylko 2 elementy dziecko1 i dziecko2 <!ELEMENT nasz-element4 (dziecko1?,dziecko2*,(dziecko3 dziecko4)+)> - element o nazwie nasz-element4 który ma 1 lub 0 elementów dziecko1, dowolną ilość elementów dziecko2 i wystąpienie przynajmniej jednego elementu dziecko3 lub dziecko4 <!ELEMENT nasz-element5 (dziecko1 dziecko2 #PCDATA)*) element o nazwie nasz-element5 który może mieć dowolną ilość elementów dziecko1 lub dziecko2 lub dane parsowane. Źródło: 20
21 DTD atrybuty <!ATTLIST nazwa-elementu nazwa-atrybutu typ-atrybutu wartoscdomyslna> CDATA wartością są znaki (en1 en2..) - wartość atrybutu musi być jedna z listy ID wartość jest unikalnym identyfikatorem IDREF wartość jest identyfikatorem innego elementu (referencja) IDREFS wartość to lista innych identyfikatorów NMTOKEN wartością jest poprawna nazwa XML NMTOKENS wartościami są poprawne nazwy XML ENTITY wartością jest encja/podmiot ENTITIES wartościami są encje/podmioty NOTATION wartością jest notacja Xml: wartością jest predefiniowana wartość XML Źródło: 21
22 DTD atrybuty Wartości domyślne atrybutów mogą być następujące: Value domyślna wartość #REQUIRED atrybut jest wymagany #IMPLIED atrybut nie jest wymagany #FIXED value atrybut ma ustaloną wartość Np. <!ATTLIST kwadrat szerokość CDATA "0"> <!ATTLIST osoba numer CDATA #REQUIRED> <osoba numer="5677" /> poprawny xml <osoba /> nie poprawny xml <!ATTLIST platnosc typ (czek gotowka) "gotowka"> - przykład atrybutu z listą wyboru z domyślną wartością Źródło: 22
23 DTD encje/podmioty Skróty, standardowego tekstu, lub specjalnych znaków <!ENTITY pisarz "Jan Kowalski."> <!ENTITY copyright "Kowalski i Spółka"> W XMLu wyglądało by to np. tak: <author>&autor;©right;</author> Źródło: 23
24 XML <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="transformacja.xslt"?> <!DOCTYPE ksiazka-telefoniczna SYSTEM "definicja.dtd"> <ksiazka-telefoniczna kategoria="bohaterowie"> <!-- komentarz --> <osoba charakter="dobry"> <imie>adam</imie> <nazwisko>miauczynski</nazwisko> <telefon> </telefon> </osoba> <osoba charakter="zly"> <imie>alojzy</imie> <nazwisko>markowski</nazwisko> <telefon/> </osoba> </ksiazka-telefoniczna> 24
25 CSS Jedną z opcji prezentacji danych XMLowych jest zastosowanie arkusza styli CSS Cascading Style Sheets język służący do opisu formy prezentacji (wyświetlania) stron WWW Jest to lista dyrektyw (tzw. reguł) ustalających w jaki sposób ma zostać wyświetlana przez przeglądarkę internetową zawartość wybranego elementu (lub elementów) (X)HTML lub XML. Źródło: wikipedia 25
26 CSS Składa się zwykle z selektora cechy i wartości np. table { border: thin solid #0000FF; } Źródło: wikipedia 26
27 CSS Przykład pliku styl.css osoba { display: block; margin-bottom: 30pt; margin-left: 0; border-right: blue thin solid; border-top: blue thin solid; font-weight: bold; font-size: large; border-left: blue thin solid; color: silver; border-bottom: blue thin solid; font-style: italic; font-family: Arial; background-color: black; } imie, nazwisko { display: block; color: yellow; margin-left: 20pt; } telefon { color: #FF00FF; } Źródło: wikipedia 27
28 CSS Plik adresownik3_z_css.xml <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/css" href="styl.css"?> <!DOCTYPE ksiazka-telefoniczna SYSTEM "definicja.dtd"> <ksiazka-telefoniczna kategoria="bohaterowie"> <!-- komentarz --> <osoba charakter="dobry"> <imie>adam</imie> <nazwisko>miauczynski</nazwisko> <telefon> </telefon> </osoba> <osoba charakter="zly"> <imie>alojzy</imie> <nazwisko>markowski</nazwisko> <telefon/> </osoba> <osoba charakter="dobry"> <imie>miś</imie> <nazwisko>uszatek</nazwisko> <telefon> </telefon> </osoba> </ksiazka-telefoniczna> Źródło: wikipedia 28
29 XSL EXtensible Stylesheet Language Obecnie dzieli się na 4 części: XSLT służy do transformacji dokumentów XML np. Do XHTML'a lub innych dokumentów xmlowych. Xpath służy do nawigowania w dokumentach XML XSL- dawny XSL-FO, słownik opisujący formatowanie XQuery język zapytań. 29
30 XSLT Tłumaczy tagi XML na XHTML lub inny XML Jest najważniejszą częścią XSL Używa XPath do nawigowanie w dokumentach XML Można dodawać lub zabierać elementy lub atrybuty do lub z wyjściowego pliku Można zmieniać kolejność czy sortować elementy Wykonywać testy i podejmować decyzje które elementy wyświetlić a które ukryć Oraz wiele innych ciekawych operacji 30
31 XSLT wsparcie Większość przeglądarek internetowych wspiera XML i XSLT Firefox wspiera od wersji 3.0 XML, XSLT i XPath IE wspiera XML, XSLT i XPath od wersji 6 wersja 5 była nie kompatybilna z oficjalną rekomendacją W3C XSL Google Chrome wspiera XML, XSLT i XPath od wersji 1 Opera XML, XSLT i XPath wspiera od wersji 9 Opera 8 wspierała tylko XML+CSS Apple Safari 3 wspiera XML i XSLT 31
32 XSLT Jak to działa? Podczas procesu transformacji, XSLT używa XPath do zdefiniowania kawałka dokumentu źródłowego który powinien pasować do jednego lub kilku predefiniowanych wzorców. Kiedy wystąpi spasowanie, XSLT przekształca pasującą część źródłową na dokument docelowy, według zadanego wzorca 32
33 XSLT Tworzymy XSLT Zaczynamy od poprawnej deklaracji typu dokumentu Root element który definiuje że dany dokument jest XSLT to <xsl:stylesheet> lub <xsl:transform> oba są jednoznaczne Poprawną formą zadeklarowanie dokumentu XSLT zgodnego z W3C XSLT jest: <xsl:stylesheet version="1.0" xmlns:xsl=" 1999/XSL/Transform"> lub <xsl:transform version="1.0" xmlns:xsl=" 33
34 XSLT Tworzymy XSLT Zacznijmy od naszego przykładowego XML'a adresownik1.xml Tworzymy plik transformacja1.xslt 34
35 XSLT <?xml version="1.0" encoding="utf-16"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="/"> <html> <body> <h2>moja książka telefoniczna</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">imię</th> <th align="left">nazwisko</th> <th align="left">numer</th> </tr> <xsl:for-each select="ksiazka-telefoniczna/osoba"> <tr> <td> <xsl:value-of select="imie"/> </td> <td> <xsl:value-of select="nazwisko"/> </td> <td> <xsl:value-of select="telefon"/> </td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> 35
36 XSLT Podłączamy xslt do xml'a <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="transformacja1.xslt"?> <!DOCTYPE ksiazka-telefoniczna SYSTEM "definicja.dtd"> <ksiazka-telefoniczna kategoria="bohaterowie"> <!-- komentarz --> <osoba charakter="dobry"> <imie>adam</imie> <nazwisko>miauczynski</nazwisko> <telefon> </telefon> </osoba> <osoba charakter="zly"> <imie>alojzy</imie> <nazwisko>markowski</nazwisko> <telefon/> </osoba>... 36
37 XSLT elementy <xsl:template> Posiada atrybut match służący do skojarzenia wzorca z elementem xml. Może też służyć do określenia wzorca całego dokumentu <xsl:template match="/"> / kojarzy root element dokumentu XML Zawartość elementu xsl:template określa fragment HTML'a do zapisania na wyjściu. 37
38 XSLT elementy <xsl:value-of> Może służyć do ekstraktowania wartości z XML i wstawienia ich do wyjściowego pliku. Posiada atrybut select którego wartością znowu jest XPath określający ścieżkę do elementu XML którego wartość chcemy użyć. Przykładowo <td> <xsl:value-of select="ksiazka-telefoniczna/osoba/imie"/> </td> 38
39 XSLT elementy <xsl:for-each"> Służy do wskazania wszystkich węzłów o określonej ścieżce Posiada atrybut select, który wskazuje za pomocą XPath węzeł który może występować wiele razy Działa trochę jak pętla w której dla każdego wystąpienia danego elementu wykonuje się kod w jej wnętrzu <xsl:for-each select="ksiazka-telefoniczna/osoba"> <tr> <td> <xsl:value-of select="imie"/> </td> <td> <xsl:value-of select="nazwisko"/> </td> <td> <xsl:value-of select="telefon"/> </td> </tr> </xsl:for-each> 39
40 XSLT elementy <xsl:for-each"> Możemy też filtrować które elementy mają się znaleźć na liście np: <xsl:for-each select="ksiazka-telefoniczna/osoba[imie='jan']"> Spowoduje to wejście tylko w te elementy gdzie tag imię będzie = Jan Możemy zastosować następujące operatory = (równe)!= (różne) < mniejsze niż > większe niż Przykład transformacja2.xsl 40
41 XSLT elementy <xsl:sort/> Sortowanie według tego co wskażemy w select Można użyć w elementach xsl:for-each oraz xsl:apply-templates <xsl:for-each select="ksiazka-telefoniczna/osoba[imie!='jan']"> <xsl:sort select="nazwisko"/> <tr> <td> <xsl:value-of select="imie"/> </td> <td> <xsl:value-of select="nazwisko"/> </td> <td> <xsl:value-of select="telefon"/> </td> </tr> </xsl:for-each> Przykład transformacja3.xsl 41
42 XSLT elementy Sprawdzanie warunku logicznego <xsl:if/> W poniższym przykładzie chcemy wyświetlić wszystkie osoby z wiekiem powyżej 100 <xsl:if test="wiek > 100"> <tr> <td> <xsl:value-of select="imie"/> </td> <td> <xsl:value-of select="nazwisko"/> </td> <td> <xsl:value-of select="telefon"/> </td> </tr> </xsl:if> Przykład transformacja3.xsl 42
43 XSLT elementy <xsl:choose/> <xsl:when/><xsl:otherwise/> Coś w rodzaju konstrukcji switch/case Wybierane są pewne przypadki w razie nie spełnienia żadnego przetwarzana jest część otherwise <xsl:choose> <xsl:when test="@charakter = 'dobry'"> <tr bgcolor="green">... </tr> </xsl:when> <xsl:when test="@charakter = 'zly'"> <tr bgcolor="red">... </tr> </xsl:when> <xsl:otherwise> <tr bgcolor="yellow"> <td>... </tr> </xsl:otherwise> </xsl:choose> Przykład transformacja3.xsl 43
44 Zastosuj odpowiedni wzorzec XSLT elementy <xsl:apply-templates/> Opisujemy co ma występować na danym poziomie <xsl:template match="ksiazka-telefoniczna/osoba"> <tr> <xsl:apply-templates select="imie"/> <xsl:apply-templates select="nazwisko"/> <xsl:apply-templates select="telefon"/> <xsl:apply-templates select="wiek"/> </tr> </xsl:template> <xsl:template match="imie"> <td> <xsl:value-of select="."/> </td> </xsl:template> Przykład transformacja4.xsl 44
45 XSLT i XML narzędzia W Linuxie mamy do dyspozycji dwa przydatne narzędzia związane z xmlem. xmllint służy do parsowania plików xmlowych. Między innymi sprawdza ich poprawność lub formatuje wyjście robiąc odpowiednie wcięcia np: xmllint --format adresownik4.xml >> adresonik4_f.xml xmllint --dtdvalid definicja.dtd adresownik.4.xml xsltproc służy przetworzenia pliku xml zadanym xslt. Np: xsltproc adresownik4.xml -o adresownik.html Z narzędzi komercyjnych można polecić spyxml lub TurboXML 45
46 LIBXML Wstęp LibXml2 jest biblioteką służącą parsowaniu xml Działa na Linuxie/Unixie Windowsie i jest łatwo przenoszona na inne systemy. Jest napisana praktycznie w czystym Ansi C Istnieje też wrapper do c
47 LIBXML Instalacja Najprościej zainstalować w postaci paczki linuxowej libxml2 oraz libxml2-devel Można też pobrać źródła lub skompilowane wersje biblioteki ze strony ftp://xmlsoft.org/libxml2/ Istnieją też gotowe wersje dla Windowsa Można pobrać źródła src.rpm następnie wykonać rpm --rebuild libxml(2)-xxx.src.rpm. To powinno wygenerować dwa rpm'y gotowe do zainstalowania 47
48 LIBXML Kompilacja Jeżeli ktoś chce skompilować sobie bezpośrednio ze źródeł może wykonać to w prosty (pod warunkiem spełnionych zależności) sposób. Rozpakować i przejść do katalogu gunzip -c xxx.tar.gz tar xvf - cd libxml-xxxx Sprawdzić jakie mamy opcje:./configure help Wygenerować i uruchomić make:./configure [dodatkowe opcje] make make install 48
49 LIBXML Używanie Podczas kompilowania programów z użyciem libxml potrzeba podać ścieżkę do bibliotek i do includów By pobrać dodatkowe flagi kompilatora w tym przypadku jest to ścieżka do includów: xml2-config --cflags By zobaczyć jakie biblioteki powinniśmy dolinkować: xml2-config -libs Ostatecznie polecenie gcc może wyglądać tak: gcc nasz_program.c -o program `xml2- config --cflags` `xml2-config --libs` 49
50 LIBXML używanie Zacznijmy od zrobienia pliku Makefile: PROGS = przyklad1 CC = gcc CFLAGS = -Wall -ggdb `xml2-config cflags` LIBS = `xml2-config libs` CLEANFILES = core *.o all: $(PROGS) przyklad1: przyklad1.c ${CC} ${CFLAGS} ${INC} -o przyklad1 przyklad1.c {LIBS} clean: rm -f ${PROGS} ${CLEANFILES} 50
51 LIBXML używanie Piszemy program przyklad.c który na początek tylko wczyta plik xml podany jako parametr. #include <stdio.h> #include <libxml/tree.h> #include <libxml/parser.h> #include <libxml/xmlreader.h> int main (int argc, char **argv) { xmldocptr doc; doc = xmlparsefile (argv[1]); if (doc == NULL) { printf ("Błąd ładowania dokumentu xml: %s\", argv[1]); return (-1); } return 0; } 51
52 XML używanie Typ xmldocptr jest zdefiniowany następująco: Typedef xmldoc * xmldocptr; Structure xmldoc struct _xmldoc { void * _private : application data xmlelementtype type : XML_DOCUMENT_NODE, must be second! char * name : name/filename/uri of the document struct _xmlnode *children : the document tree struct _xmlnode *last : last child link struct _xmlnode *parent : child->parent link struct _xmlnode *next : next sibling link struct _xmlnode *prev : previous sibling link struct _xmldoc * doc : autoreference to itself End of common p int compression : level of zlib compression int standalone : standalone document (no external refs) } struct _xmldtd * intsubset : the document internal subset struct _xmldtd * extsubset : the document external subset struct _xmlns * oldns : Global namespace, the old way const xmlchar * version : the XML version string const xmlchar * encoding : external initial encoding, if any void * ids : Hash table for ID attributes if any void * refs : Hash table for IDREFs attributes if any const xmlchar * URL : The URI for that document int charset : encoding of the in-memory content actua struct _xmldict *dict : dict used to allocate names or NULL void * psvi : for type/psvi informations int parseflags : set of xmlparseroption used to parse th int properties : set of xmldocproperties for this docume 52
53 XML używanie Dodajemy poruszanie się po węzłach i odczytanie ich wartości. xmldocptr doc; xmlnodeptr rootelement; xmlnodeptr wezel; wezel = rootelement->xmlchildrennode; while (wezel!= NULL) { printf("nazwa węzła to: %s typ: %d wartość: %s\n",wezel->name,wezel->type,wezel->content); if (wezel->type==1 && wezel->xmlchildrennode!=null) { printf("wartość tego węzła to: %s\n",wezel- >xmlchildrennode->content); } wezel=wezel->next; } Przykład: przyklad2.c przyklad1.xml 53
54 XML używanie Typ xmlnodeptr zdefiniowany jest następująco: Typedef xmlnode * xmlnodeptr; Structure xmlnode struct _xmlnode { void * _private : application data xmlelementtype type : type number, must be second! const xmlchar * name : the name of the node, or the entity struct _xmlnode * children : parent->childs link struct _xmlnode * last : last child link } struct _xmlnode * parent : child->parent link struct _xmlnode * next : next sibling link struct _xmlnode * prev : previous sibling link struct _xmldoc * doc : the containing document End of common p xmlns * ns : pointer to the associated namespace xmlchar * content : the content struct _xmlattr * properties : properties list xmlns * nsdef : namespace definitions on this node void * psvi : for type/psvi informations unsigned short line : line number unsigned short extra : extra data for Xpath/XSLT 54
55 XML używanie Typ typy węzłów są podane w typie wyliczeniowym: Enum xmlelementtype { XML_ELEMENT_NODE = 1 XML_ATTRIBUTE_NODE = 2 XML_TEXT_NODE = 3 XML_CDATA_SECTION_NODE = 4 XML_ENTITY_REF_NODE = 5 XML_ENTITY_NODE = 6 XML_PI_NODE = 7 XML_COMMENT_NODE = 8 XML_DOCUMENT_NODE = 9 XML_DOCUMENT_TYPE_NODE = 10 XML_DOCUMENT_FRAG_NODE = 11 XML_NOTATION_NODE = 12 XML_HTML_DOCUMENT_NODE = 13 XML_DTD_NODE = 14 XML_ELEMENT_DECL = 15 XML_ATTRIBUTE_DECL = 16 XML_ENTITY_DECL = 17 XML_NAMESPACE_DECL = 18 XML_XINCLUDE_START = 19 XML_XINCLUDE_END = 20 XML_DOCB_DOCUMENT_NODE = 21 } 55
56 Odczytanie atrybutów: XML używanie printf("wartość atrybutu atr1 w rootelemencie to: %s \n ", xmlgetprop(rootelement, (xmlchar*) "atr1")); printf("wartość atrybutu atr2 w rootelemencie to: %s \n ", xmlgetprop(rootelement, (xmlchar*) "atr2")); wezel = rootelement->xmlchildrennode; while (wezel!= NULL) { printf("nazwa węzła to: %s typ: %d wartość: %s\n", wezel->name,wezel->type,wezel->content); if (wezel->type==1 && wezel->xmlchildrennode!=null) { printf("wartość tego węzła to: %s\n", wezel->xmlchildrennode->content); printf("wartość atrybutu atr1 w wezle to: %s \n ", xmlgetprop(wezel, (xmlchar*) "atr1")); printf("wartość atrybutu atr2 w wezle to: %s \n ", xmlgetprop(wezel, (xmlchar*) "atr2")); } wezel=wezel->next; } Przykład: przyklad3.c przyklad2.xml 56
57 XML używanie Tworzenie dokumentu xml: int main (int argc, char **argv) { xmldocptr doc; char *encoding = "ISO "; xmlnodeptr rootelement; doc = xmlnewdoc((const xmlchar*)"1.0"); if (doc == NULL) { printf ("Błąd tworzenia dokumentu xml\n"); return (-1); } rootelement = xmlnewdocnode(doc,null,(const xmlchar*)"glowny", const xmlchar*)"tresc"); if (rootelement == NULL) { printf ("Nie utworzono root elementu"); return (-1); } xmldocsetrootelement(doc, rootelement); xmlsaveformatfileenc("wyjsciowy.xml", doc, encoding, 2); return 0; } Przykład: przyklad4.c 57
58 XML funkcje xmldocptr xmlnewdoc (const xmlchar * version) Tworzy nowy dokument xml'owy version oznacza numer wersji xml zwykle podaje się 1.0 xmlnodeptr xmlnewdocnode (xmldocptr doc, xmlnsptr ns, const xmlchar * name, const xmlchar * content) Doc - Tworzy nowy węzeł w dokumencie wskazanie dokumentu do którego mamy dołączyć tworzony węzeł ns NameSpace (można dać NULL) name nazwa nowego węzła content - zawartość 58
59 XML funkcje xmlnodeptr xmldocsetrootelement (xmldocptr doc,xmlnodeptr root) Ustawia tzw root element w dokumencie. doc dokument do którego chcemy dołączyć root element. Gdybyśmy chcieli odłączyć można użyć funkcji: xmlunlinknode(root) int xmlsaveformatfileenc (const char * filename, xmldocptr cur, const char * encoding, int format) Zapisuje drzewo dokumentu xmlowego cur do postaci pliku o nazwie filename encoding użyte kodowanie format czy spacje formatujące powinny zostać dodane. 59
60 XML używanie Tworzenie dokumentu xml: xmlnodeptr wezel; xmlnodeptr wezel2; // xmlattrptr prop; xmldocsetrootelement(doc, rootelement); xmladdchild(rootelement,xmlnewnode(null,(const xmlchar*)"pierwszy")); wezel = xmlnewnode(null,(const xmlchar*)"drugi"); wezel2 = xmlnewtext((const xmlchar*)"tekst drugiego"); //prop = xmlnewprop(wezel,(const xmlchar*)"atr2",(const xmlchar*)"ola"); //xmladdchild(wezel,prop); xmladdchild(wezel,wezel2); xmladdchild(rootelement,wezel); wezel = xmlnewnode(null,(const xmlchar*)"trzeci"); xmlnewprop(wezel,(const xmlchar*)"atr3",(const xmlchar*)"ala"); xmladdchild(rootelement,wezel); wezel2 = xmlnewtextchild(wezel,null,(const xmlchar*)"podwezle", (const xmlchar*)"zawartosc"); xmlsaveformatfileenc("wyjsciowy.xml", doc, encoding, 2); Przykład: przyklad4.c 60
61 XML funkcje xmlnodeptr xmladdchild (xmlnodeptr parent, xmlnodeptr cur) Dodaje węzeł cur do węzła parrent. Nowy węzeł jest dodawany na końcu. Węzeł cur jest zwalniany. W przypadku gdy drugim parametrem jest atrybut wtedy jest on dodawany Jeżeli atrybut o podanej nazwie istnieje to zostaje on nadpisany. xmlnodeptr xmlnewnode (xmlnsptr ns, const xmlchar * name) Tworzy nowy węzeł ns NameSpace (można dać NULL) name nazwa nowego węzła 61
62 XML funkcje xmlnodeptr xmlnewtext (const xmlchar * content) Tworzy nowy węzeł tekstowy Content zawartość tekstowa xmlattrptr xmlnewprop (xmlnodeptr node, const xmlchar * name, const xmlchar * value) Tworzy nowy atrybut node węzeł do którego dołączymy atrybut name nazwa nowego watrubutu value wartość nowego watrubutu 62
63 XML funkcje xmlnodeptr xmlnewtextchild (xmlnodeptr parent, xmlnsptr ns, const xmlchar * name, const xmlchar * content) Tworzy nowy węzeł potomny Dodaje go na końcu listy węzłów u rodzica parent ns oznacza NameSpace (przestrzeń nazw) można dać NULL wtedy nowy węzeł odziedziczy ns po rodzicu name nazwa węzła content jeżeli nie będzie NULL zostanie wstawiony w nowym węźle encje takie jak <, >, czy & zostaną automatycznie zamienione. xmlattrptr xmlnewprop (xmlnodeptr node, const xmlchar * name, const xmlchar * value) 63
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
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
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
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ć
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
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
Aplikacje internetowe laboratorium XML, DTD, XSL
Aplikacje internetowe laboratorium XML, DTD, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD), oraz transformacja dokumentu XML do postaci
Plan prezentacji. Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura
XSLT Dariusz Dudek Plan prezentacji Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura Cechy XML a Rozszerzalny język znaczników Stworzony
Język XSLT. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Język XSLT Po zrealizowaniu materiału student będzie w stanie Dokonać przekształcenia zawartości dokumentu XML do formatu HTML oraz TXT Realizować przetwarzanie warunkowe dokumentu XML Formatować wartości
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
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
XML extensible Markup Language 3
XML extensible Markup Language 3 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
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
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ę
Extensible Markup Language III
KIiMK 2010 Plan XSLT-transformacje dokumentów 1 XSLT-transformacjedokumentów Informacje o XSLT Przykład transformacji 2 3 Informacje o XSLT Przykład transformacji Informacje o XSLT Przykład transformacji
Kurs WWW Język XML, część II
Język XML, część II Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Zawartość modułu Wprowadzenie do XSL XPath XSLT XSL-FO Na podstawie kursów ze stron: http://www.w3schools.com/xpath/default.asp
XML materiały dydaktyczne - Kurs Podstawowy XSL - wprowadzenie. XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO).
XSL (XSLT) Transformacja dokumentów XML. XML warstwa przechowująca informacje XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO). Transformacja XSLT utworzenie nowego dokumentu wynikowego
Prezentacja dokumentów XML
Prezentacja dokumentów XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2011/12 Patryk Czarnik 06 Prezentacja XML 2011/12 1 / 64 1 Arkusze stylu Rozdzielenie
Elementarz HTML i CSS
Elementarz HTML i CSS Znaczniki przydatne w pracy redaktora stron internetowych 1 Elementarz HTML i CSS Znaczniki przydatne w pracy redaktora stron internetowych Treść, korekta, skład i oprawa graficzna
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,
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
Języki formatowania dokumentów strukturalnych. XSL przekształcenia XML-a. XSL a XSLT. XSL części składowe. Zasada działania przekształcenia XSLT
Języki formatowania dokumentów strukturalnych XSL przekształcenia XML-a SGML: FOSI (Formatting Output Specification Instance): specyfikacja MIL-PRF-28001, zbyt małe możliwości dla ogólnych zastosowań.
Przetwarzanie dokumentów XML za pomocą XSLT (30.03.2015 r.)
Przetwarzanie dokumentów XML za pomocą XSLT (30.03.2015 r.) Przetwarzanie dokumentów XML oznacza zwykle, wyłuskanie z nich danych oraz przetwarzanie ich na inny format np HTML lub PDF. Jedną z metod przekształcania
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
Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL
Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD i XML Schema), oraz transformacja
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
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
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
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
Egzamin z przedmiotu Projektowanie języków XML 18.06.2013.... imię i nazwisko. Zadanie 1 2 3 4 5 6 7 Suma Punkty Max 6 5 5 6 6 6 6 40 Punkty
Egzamin z przedmiotu Projektowanie języków XML 18.06.2013 Grupa A... imię i nazwisko. indeks Zadanie 1 2 3 4 5 6 7 Suma Punkty Max 6 5 5 6 6 6 6 40 Punkty Zadanie 1. Przyjrzyj się podanym dokumentom XML.
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
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
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
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ę
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
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ć
METAJĘZYKI. Politechnika Koszalińska Wydział Elektroniki i Informatyki Katedra Inżynierii Komputerowej
4 dr inż. Robert Berezowski e-mail: beny@ie.tu.koszalin.pl Ul. Śniadeckich 2 Pokój 223A Politechnika Koszalińska Wydział Elektroniki i Informatyki Katedra Inżynierii Komputerowej 1 XPath nawigacja i wyszukiwanie
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
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,
Podstawy (X)HTML i CSS
Inżynierskie podejście do budowania stron WWW momat@man.poznan.pl 2005-04-11 1 Hyper Text Markup Language Standardy W3C Przegląd znaczników Przegląd znaczników XHTML 2 Cascading Style Sheets Łączenie z
Podstawy XML-a. Zaawansowane techniki programowania
Podstawy XML-a Zaawansowane techniki programowania Dokumenty XML XML = ang. Extensible Markup Language rozszerzalny język znacznikó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
Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.
Kaskadowe arkusze stylów CSS Geneza - oddzielenie struktury dokumentu HTML od reguł prezentacji - poszerzenie samego HTML Korzyści - przejrzystość dokumentów - łatwe zarządzanie stylem (wyglądem) serwisu
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
Służy do wybierania/wyszukiwania fragmentów dokumentu XML. Przypomina trochę ścieżki w systemie operacyjnym. Niech będzie dany dokument XML:
Podstawy XPATH Służy do wybierania/wyszukiwania fragmentów dokumentu XML. Przypomina trochę ścieżki w systemie operacyjnym. Niech będzie dany dokument XML:
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
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
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
Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 8 Podstawy języka XML. Celem ćwiczeń jest poznanie zasad tworzenia dokumentów w oparciu o język XML oraz metod modyfikacji ich
Narzędzia informatyczne w językoznawstwie
Narzędzia informatyczne w językoznawstwie HTML i XHTML Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 17. października 2007 Marcin Junczys-Dowmunt Narzędzia
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
Przetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia r.
Przetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia 06 11.04.2016 r.) Przetwarzanie dokumentów XML oznacza zwykle, wyłuskanie z nich
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)
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
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
Ź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/
XSL, tj. XSLT i XSL-FO czyli jak przekształcać i ładnie wyświetlać XML-e. Kuba Pochrybniak
XSL, tj. XSLT i XSL-FO czyli jak przekształcać i ładnie wyświetlać XML-e Kuba Pochrybniak 1. XML PDF Jak? Jak? L A TEX Jak? L A TEX XSL-FO Jak? L A TEX XSL-FO rzeźbienie ręczne (np. w php) Jak? L A TEX
Prezentacja dokumentów XML
Prezentacja dokumentów XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarządzania treścią 2008/09 Rozdzielenie treści od wyglądu Dokumenty źródłowe: tylko treść (dane), znaczniki
Stwórz dokument XML zawierający poniższe informacje. Wykorzystaj atrybuty.
XML zadania 2013 Zasady uzyskania zaliczenia na ostatniej stronie! Przydatne linki: http://www.validome.org/xml/ http://www.w3.org/2001/03/webdata/xsv Zadanie 1 (XML) Stwórz dwa dokumenty XML zawierającą
Rodzaje przetwarzania XSLT (1)
XSLT część 2 Rodzaje przetwarzania XSLT (1) Przetwarzanie sterowane strukturą dokumentu źródłowego (ang. push): przechodzimy po strukturze dokumentu źródłowego, generujemy fragmenty struktury dokumentu
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).
Tworzenie Stron Internetowych. odcinek 6
Tworzenie Stron Internetowych odcinek 6 CSS kaskadowe arkusze stylów CSS (Cascading Style Sheets), czyli Kaskadowe Arkusze Stylów "stylów" "arkusze" Reguły opisujące wygląd dokumentu opisanego za pomocą
Technologie internetowe
Technologie internetowe Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu Wprowadzenie do XML Składnia, znaczniki i atrybuty XML Schema, DTD XSL XPath XSLT XSL-FO Na podstawie kursó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
mgr inż. Jacek Staniec Język XML staniec@wit.edu.pl
mgr inż. Jacek Staniec Język XML staniec@wit.edu.pl Zaliczenie przedmiotu (3 punkty ECTS) Obecność na 7 pierwszych zajęciach 15 punktów Sprawozdania z 7 pierwszych zajęć 15 punktów Projekt podstawowy 50
Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.
Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
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
Środowisko XML (Extensible Markup Language).
Środowisko XML (Extensible Markup Language). W skrócie Idea: XML standard opisu informacji Uniwersalne, proste, samoopisujące się dokumenty Źródła: Geneza SGML Specyfikacja www.w3.org Składania: XML to
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
za pomocą: definiujemy:
HTML CSS za pomocą: języka HTML arkusza CSS definiujemy: szkielet strony wygląd strony Struktura dokumentu html - znaczniki Znaczniki wyznaczają rodzaj zawartości. element strony
Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych
rk Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych pojęć, prawdopodobnie zastanawiasz się, kiedy zaczniesz
CSS. Kaskadowe Arkusze Stylów
CSS Kaskadowe Arkusze Stylów CSS CSS = Cascading Style Sheets Style określają sposób wyświetlania zawartości elementów HTML Arkusz stylów jest zbiorem takich reguł Pojawiły się w HTML 4.0 by rozwiązać
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
Zaawansowane aplikacje WWW - laboratorium
Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w
Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor
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
XML extensible Markup Language. część 3
XML extensible Markup Language część 3 CSS Kaskadowe arkusze stylów CSS Kaskadowe arkusze stylów CSS to skrót od Cascading Style Sheets Style pozwalają definiować sposób wyświetlania elementów dokumentu
Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania
Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania Przemysław Kobylański Wprowadzenie Każdy program w C musi zawierać przynajmniej funkcję o nazwie main(): Aby możliwe
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
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
Aplikacje internetowe. Interfejs użytkownika
Aplikacje internetowe Interfejs użytkownika Plan wykładu Formatowanie HTML za pomocą arkuszy stylów CSS Język XML ogólna struktura dokumentów opis struktury za pomocą DTD przestrzenie nazw Język XHTML
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
STRONY INTERNETOWE mgr inż. Adrian Zapała
1 STRONY INTERNETOWE mgr inż. Adrian Zapała STRONY INTERNETOWE Rodzaje stron internetowych statyczne (statyczny HTML + CSS) dynamiczne (PHP, ASP, technologie Flash) 2 JĘZYKI STRON WWW HTML (ang. HyperText
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
2 Podstawy tworzenia stron internetowych
2 Podstawy tworzenia stron internetowych 2.1. HTML5 i struktura dokumentu Podstawą działania wszystkich stron internetowych jest język HTML (Hypertext Markup Language) hipertekstowy język znaczników. Dokument
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
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
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
Zaawansowana Pracownia Komputerowa - Ćwiczenia. Krzysztof Miernik
Zaawansowana Pracownia Komputerowa - Ćwiczenia Krzysztof Miernik HTML - Podstawowe Informacje HTML to hipertekstowy język znaczników (ang. HyperText Markup Language) służacy do tworzenia stron internetowych
Tworzenie Stron Internetowych. odcinek 5
Tworzenie Stron Internetowych odcinek 5 Nagłówek zawiera podstawowe informacje o dokumencie, takie jak: tytuł strony (obowiązkowy) metainformacje/metadane (obowiązkowa deklaracja
Kaskadowe arkusze stylów (CSS)
Kaskadowe arkusze stylów (CSS) CSS (Cascading Style Sheets) jest to język opisujący sposób, w jaki przeglądarki mają wyświetlać zawartość odpowiednich elementów HTML. Kaskadowe arkusze stylów służą do
Prezentacja dokumentów XML
Prezentacja dokumentów XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Arkusze stylu Rozdzielenie treści od wygladu Przypisanie stylu do dokumentu CSS
Dokument hipertekstowy
Dokument hipertekstowy Laboratorium 4 CSS mgr inż. Krzysztof Wróbel Katedra Lingwistyki Komputerowej Cel poznanie konceptu stylów tworzenie różnych typów reguł stylów Style służą do zmiany wyglądu elementów
XML extensible Markup Language. część 3
XML extensible Markup Language część 3 Definicja Typu Dokumentu - DTD DTD (ang. Document Type Definition) rodzaj dokumentu definiujący formalną strukturę dokumentów XML. DTD określa składnię konkretnej
XML extensible Markup Language. część 8
XML extensible Markup Language część 8 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
Prezentacja dokumentów XML
Prezentacja dokumentów XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk Czarnik (MIMUW) 06 Prezentacja XML 2007/08 1 / 33 Plan 1 Arkusze stylu
Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.
Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using
Pakiet XML Czym jest i z czym się je?
Pakiet XML Czym jest i z czym się je? mgr Maciej Beręsewicz Katedra Statystyki, UE w Poznaniu Spis treści 1. Web scraping 2. XML 3. XPath 4. Pakiet XML 4.1 Allegro.pl 4.2 Last.fm 4.3 Poznan.gumtree.pl