Język XML w aplikacjach z bazami danych - po roku
|
|
- Justyna Rutkowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 V Konferencja PLOUG Zakopane Październik 1999 Język XML w aplikacjach z bazami danych - po roku dr inż. Tomasz Traczyk ttraczyk@ia.pw.edu.pl Instytut Automatyki i Informatyki Stosowanej Politechniki Warszawskiej Streszczenie Referat jest kontynuacją prezentacji z zeszłorocznej konferencji PLOUG. Pokazano rozwój języka XML oraz języków i narzędzi mu towarzyszących. Omówiono nowe ważne składniki XML, jak przestrzenie nazw i schematy oraz języki związane z XML, np. XSL i XQL. Zaprezentowano przykłady zastosowań XML. Przedstawiono też nowe narzędzia umożliwiające wykorzystanie XML w aplikacjach z bazami danych, w szczególności narzędzia Oracle. Referat ilustrują przy-kłady dotyczące zastosowania XML w systemie wspomagającym zarządzanie dużym wydziałem wyższej uczelni.
2 Wprowadzenie W referacie zaprezentowanym na zeszłorocznej konferencji PLOUG [1] przedstawiono język XML oraz jego podstawowe składniki. Omówiono rolę DTD i arkuszy stylistycznych, porównano XML z powszechnie znanym HTML. Przedstawiono też potencjalne zastosowania XML, koncentrując się na zastosowaniach związanych z bazami danych. W tym referacie opisano rozwój XML i jego zastosowań, jaki nastąpił w ciągu minionego roku. Przedstawiono bardziej szczegółowo język XSL, omówiono nowe propozycje składników języka: przestrzenie nazw, XQL, schematy, DOM. Wymieniono nowe zastosowania XML. Przedstawiono też nowe narzędzia wspomagające zastosowanie XML, w tym narzędzia związane z bazami danych Oracle. W ciągu roku, który upłynął od poprzedniej konferencji PLOUG, zainteresowanie językiem XML wyraźnie wzrosło. Pojawiły się pierwsze powszechnie dostępne narzędzia i pierwsze zastosowania komercyjne. Na bazie XML zdefiniowano wiele specjalizowanych języków znakowania. Jak się wydaje, XML staje się już trwałym i ważnym składnikiem systemów informacyjnych. Standaryzacja i rozwój języka XML Standaryzacją języka XML i języków mu towarzyszących (np. XSL) zajmuje się organizacja World Wide Web Consortium (W3C). Zatwierdza ona zgłoszone propozycje standardów. Do organizacji tej zgłaszane są także wszelkie propozycje rozszerzeń języka. Obecnie specyfikacja języka XML, przestrzeni nazw oraz modelu DOM mają status W3C Recommendation, oznaczający ostatnią fazę przed uznaniem standardu. Mniej zaawansowane są prace nad specyfikacjami XSL, XLL i XPointer mają status W3C Working Draft. Inne propozycje, np. schematy, są w młodszej fazie W3C Note. XML przeżywa obecnie szybki rozwój. Należy się spodziewać, że obecne specyfikacje podlegać będą ewolucji. Pojawienie się na rynku pierwszych powszechnie dostępnych narzędzi tworzy jednak pewien standard de facto, do którego zapewne będą musiały być dostosowane formalne definicje. Przypomnienie co to jest XML XML jest metajęzykiem służącym do definiowania języków znakowania. Można w nim definiować języki opisu stron i/lub języki służące do zapisu danych wraz ze strukturą. XML jest nieco zmodyfikowanym podzbiorem SGML. Stąd też bierze się pozorne podobieństwo języka do HTML. Cele języków są jednak zgoła odmienne: HTML jest gotowym językiem opisu stron; istnieją też ważne różnice składniowe, np. obowiązek jawnego zamykania znaczników w XML. Dokument w XML składa się z elementów wyróżnionych znacznikami (tags). Każdy element może mieć atrybuty. Zawartość elementu stanowi tekst zawierający znaczniki, elementy mogą więc być zagnieżdżane. Dopuszczalne są elementy puste nie zawierające żadnego tekstu ale muszą one być specjalnie oznaczone. Struktura znaczników musi spełniać pewne wymagania, pozwalające na poprawną interpretację struktury dokumentu przez przeglądarki. Dokument spełniający takie wymagania nazywa się dobrze sformułowanym (well-formed). Strukturę dokumentu definiuje się za pomocą tzw. DTD (Document Type Definition). Dokument zgodny z DTD nazywa się prawidłowym (valid). Należy zwrócić uwagę, że ten stopień poprawności nie jest bezwzględnie wymagany przeglądarki pokazują prawidłowo dokumenty well-formed. Poprawność typu valid wymagana jest wówczas, gdy potrzebne jest pełne sprawdzenie poprawności struktury dokumentu np. przy przetwarzaniu danych zawartych w dokumencie. 2
3 Przykład Przedstawiony poniżej przykład dokumentu w XML pochodzi z systemu wspomagającego zarządzanie wydziałem wyższej uczelni [11]. Konspekty opisujące zawartość wykładów spływają do redaktora wydziałowego serwisu WWW, który przekształca je do postaci dokumentów XML. Dokumenty te są następnie wczytywane przez specjalny program do wydziałowej bazy danych, gdzie przechowywane są w postaci częściowo ustrukturalizowanej (patrz [1]). Oto przykładowy dokument: <?xml version="1.0" encoding="iso "?> <!DOCTYPE eres_konspekty SYSTEM "konspekty.dtd"> <?xml-stylesheet type="text/xsl" href="konspekty.xsl"?> <eres_konspekty> <przedmiot id= KBD2 wersja= 1 > <slowo_kluczowe>bazy danych</slowo_kluczowe> <slowo_kluczowe>oracle</slowo_kluczowe> <konspekt> <czesc_konspektu id= Streszczenie > <P> Monograficzny przedmiot poświęcony bazie danych i narzędziom Oracle. </P> </czesc_konspektu> <czesc_konspektu id= Treść przedmiotu > <P> Omawiane są podstawowe zagadnienia związane z wykorzystaniem RDBMS Oracle7 i <I>Oracle8</I> oraz administrowaniem nimi.</p> <P> Przedstawiane są także narzędzia do budowy aplikacji: </P> <UL> <LI> Oracle Forms, </LI> <LI> Oracle Reports. </LI> </UL> </czesc_konspektu> </konspekt> </przedmiot> </eres_konspekty> Znaczenie poszczególnych elementów dokumentu jest łatwe do zrozumienia dla każdego, kto zna podstawy HTML. Oto odpowiednia definicja typu dokumentu (DTD): <!ELEMENT eres_konspekty (przedmiot)+ > <!ELEMENT przedmiot ((slowo_kluczowe)*, konspekt) > <!ATTLIST przedmiot id ID #REQUIRED wersja CDATA #IMPLIED > <!ELEMENT slowo_kluczowe (#PCDATA) > <!ELEMENT konspekt (czesc_konspektu)+ > <!ELEMENT czesc_konspektu (P UL)+ > <!ATTLIST czesc_konspektu id ID #REQUIRED > <!ELEMENT P (#PCDATA I)* > <!ELEMENT I (#PCDATA) > <!ELEMENT UL (LI)+ > <!ELEMENT LI (#PCDATA) > Znaczenie składników DTD wyjaśniono szczegółowo w [1]. 3
4 Rozwój składników XML Rozwój zastosowań XML spowodował potrzebę uzupełnienia języka o dodatkowe składniki. Opisano tu kilka ważniejszych propozycji. Przestrzenie nazw Można się spodziewać, że po rozpowszechnieniu XML powstanie bardzo wiele systemów (słowników) znaczników, przeznaczonych do stosowania w swych specyficznych dziedzinach. Autor, budujący dokument z danej dziedziny, powinien korzystać z już istniejących systemów znaczników, ale może potrzebować znaczników z więcej niż jednego słownika, może także chcieć dołączyć swoje własne znakowanie. W takiej, bardzo przecież typowej, sytuacji może dojść do konfliktów nazw: nazwy znaczników i atrybutów zdefiniowane w różnych słownikach mogą się pokrywać. Aby zapobiec tego typu problemom, określono sposób wyznaczania i wykorzystania tzw. przestrzeni nazw (XML namespaces) [6]. Przestrzeń nazw jest jednoznacznie identyfikowana przez podanie URI (Uniform Resource Identifier, czyli adresu sieciowego) domeny, która zarządza daną przestrzenią nazw. Element XML odwołuje się do przestrzeni nazw przez podanie specjalnego atrybutu xmlns i zdefiniowanie prefiksu, który będzie służył do wyróżniania znaczników należących do danej przestrzeni nazw. W przypadku naszego przykładowego dokumentu można by zdefiniować specjalną przestrzeń nazw i zapisać dokument tak: <eres:konspekty xmlns:eres= > <eres:konspekty> <eres:slowo_kluczowe>... Zdefiniowano tu prefiks eres i przypisano go do przestrzeni nazw zarządzanej przez Wydział Elektroniki i Technik Informacyjnych PW, a następnie wykorzystano ten prefiks do wyróżnienia znaczników należących do powołanej przestrzeni nazw. Oczywiście w jednym dokumencie, a nawet w jednym elemencie, można powołać się na wiele przestrzeni nazw. Przyjmuje się przy tym, że pierwsza z deklaracji przestrzeni nazw ustanawia przestrzeń domyślną dla danego elementu i jego elementów podrzędnych. Dla znaczników należących do przestrzeni domyślnej prefiksy można pominąć. Schematy i typy danych DTD określa precyzyjnie składnię znaczników, ale nie daje pełnych możliwości potrzebnych przy reprezentowaniu w XML złożonych danych i ich automatycznym przetwarzaniu: DTD nie pozwala precyzyjnie określić typów danych zawartość liści w hierarchii elementów jest zawsze tekstowa; struktura dokumentu wyrażona przez DTD nie jest podatna na rozbudowę; DTD nie objaśnia znaczenia elementów; DTD nie pozwala na określenie ograniczeń i zależności między elementami innych niż hierarchia zawierania (np. nie można wyrazić w nim zależności referencyjnych). Problemy te starają się rozwiązać propozycje, wprowadzające zamiast DTD tzw. schematy (schema). Budowa dokumentów jest tu wyrażona z użyciem składni samego XML, bez konieczności odwoływania się do składni DTD. W podejściu tym struktura elementów dokumentu XML jest traktowana tak jak hierarchia klas obiektów. Schematy pozwalają na zdefiniowanie m.in.: 4
5 klas obiektów i ich hierarchii; typów danych; własności konceptualnych, np. opisów znaczenia klas i atrybutów; ograniczeń; związków, np. typu referencyjnego lub wyrażonych przez URI. Możliwy jest import do schematu fragmentów definicji innych schematów, co pozwala na sformalizowane rozbudowywanie definicji dokumentów. Propozycje sposobu definiowania schematów zawarte są w specyfikacjach XML-Data [7] oraz Document Content Description for XML (DCD). Prowadzone są także prace nad rozbudowaniem specyfikacji DTD tak, by możliwe było umieszczanie rozszerzonych informacji o danych w samym DTD. Zastosowanie schematów może pozwolić aplikacjom na szczegółowe nie ograniczające się jedynie do składni znaczników sprawdzanie poprawności zawartości dokumentów, w tym poprawności typów danych. Łączniki Dokument w XML może zawierać łączniki odwołania do innych dokumentów. Sposób tworzenia łączników w XML podano w dwóch specyfikacjach: XLL określa sposób definiowania łączników między dokumentami, XPointer określa sposób adresowania miejsc w dokumencie. Łączniki definiuje się w języku XLL (XML Linking Language) [3]. Zasadniczą część definicji łączników stanowią tzw. lokatory. Do definiowania lokatorów używa się adresów zwanych URI (Uniform Resource Identifier), stanowiących rozszerzenie URL. URI zawierać może adres sieciowy, pytanie (query, po znaku?) oraz identyfikator fragmentu (fragment identifier, po znaku #). Możliwości łączenia dokumentów są w XLL znacznie bogatsze od znanych z HTML, obejmując: łączniki proste (simple), jednokierunkowe, podobne do łączników A w HTML; łączniki złożone (extended), np. zawierające wiele lokatorów pełniących różne role. Łączniki mogą przejawiać różne zachowania (behavior), którymi sterują atrybuty show i actuate łącznika. Wskazywany przez łącznik dokument lub element może: zastępować element w tym samym kontekście, w ten sposób można np. połączyć alternatywne wersje jakiegoś fragmentu (show= replace ); być włączany do bieżącego dokumentu można tak włączyć np. fragment tekstu albo ilustrację (show= embed ); być prezentowany w nowym kontekście, np. w nowym oknie albo zamiast dotychczas prezentowanego dokumentu (show= new ). Odczyt tekstu wskazywanego przez łącznik może następować na żądanie (actuate= user ), albo automatycznie, np. gdy przeglądarka odczytuje sam łącznik (actuate= auto ). Aby nie ograniczać możliwości definiowania własnych łączników postanowiono, że nie będzie predefiniowany żaden specjalny element łącznikowy. Łączniki definiuje się zatem w DTD, tak jak inne elementy. Wyróżnia się je, wyposażając w atrybut o zastrzeżonej nazwie: każdy element mający atrybut o nazwie xml:link jest traktowany jak łącznik. Wartość tego atrybutu definiuje typ łącznika: simple prosty, extended złożony. 5
6 Sposób adresowania miejsc i fragmentów wewnątrz dokumentów określa specyfikacja XPointer (XML Pointer Language) [4]. Wskazanie fragmentu dokumentu może być bardziej skomplikowane niż w HTML i nie jest do tego niezbędne umieszczenie w tym dokumencie żadnego specjalnego oznaczenia. Adresowanie w języku XPointer opiera się na drzewie elementów na ich hierarchii i kolejności. Możliwe jest także użycie identyfikatorów elementów. Typowe adresy XPointer wskazują na określone wystąpienie konkretnego typu elementu w danym kontekście, np. można wskazać na trzeci element składowy drugiego elementu po podanym identyfikatorze. Do podawania tego typu zależności służą zdefiniowane w specyfikacji określenia położenia (location terms). Dla podanego wyżej przykładowego dokumentu: root().child(1,przedmiot) oznacza pierwszy element typu przedmiot elementu głównego, czyli przedmiot KBD2, id(kbd2).child(2,#element) wybiera drugi element podrzędny elementu o identyfikatorze KBD2, czyli element slowo_kluczowe. Jeśli adres URI wskazuje na wnętrze dokumentu w XML, to zawarty w URI identyfikator fragmentu powinien być sformułowany zgodnie ze specyfikacją XPointer. Przetwarzanie dokumentów w XML Dokumenty zapisywane są w XML po to, by mogły być efektywnie przetwarzane przez standardowe oprogramowanie. Najbardziej powszechną formą przetwarzania jest niewątpliwie prezentacja dokumentu na ekranie lub jego druk. Inne typowe rodzaje przetwarzania to wyszukiwanie danych w dokumencie lub zbiorze dokumentów i wykorzystanie danych z dokumentu w programach. Ponieważ te rodzaje przetwarzania są powszechne, opracowano standardy którym powinno podlegać oprogramowanie przeznaczone do współpracy z XML. Style-sheets i XSL Dokument w XML powinien być zbudowany na zasadzie znakowania znaczeniowego, a nie typograficznego. Cała informacja o sposobie formatowania dokumentu przez przeglądarkę musi być zatem sformułowana osobno. Do określenia wyglądu dokumentów służą tzw. arkusze stylistyczne (style-sheets). Określają one sposób prezentacji każdego z elementów. Zaawansowane są prace nad pierwszą wersją specyfikacji języka XSL (extensible Stylesheet Language) [5], który służy do definiowania arkuszy stylistycznych. Składnia XSL została w pełni zdefiniowana w XML, z użyciem przestrzeni nazw (namespaces). Podstawową ideą XSL jest przetwarzanie hierarchii znaczników na hierarchię tzw. flow objects, którym z kolei przypisuje się sposób prezentacji. Znaczniki XML są w tym procesie identyfikowane za pomocą wzorców (templates), które mogą w elastyczny sposób określać miejsce znacznika w hierarchii oraz atrybuty znacznika. Ponieważ przeglądarki, za pomocą których prezentowane są dokumenty XML, będą zapewne także przystosowane do prezentacji HTML, prostym sposobem formatowania dokumentów za pomocą XSL jest przetworzenie ich na HTML. Tak też skonstruowany został poniższy przykład. <xsl:stylesheet xmlns:xsl=" <xsl:template match="/"> 6
7 <HTML> <HEAD><TITLE>Konspekty</TITLE></HEAD> <BODY> <H1>Konspekty przedmiotów</h1> <xsl:apply-templates select="eres_konspekty/przedmiot" </BODY> </HTML> <xsl:template match="przedmiot"> <H2><xsl:value-of (<xsl:value-of <H3>Słowa kluczowe</h3> <TABLE BORDER="1"> <xsl:for-each select="slowo_kluczowe" order-by="text()"> <TR><TD><xsl:value-of/></TD></TR> </xsl:for-each> </TABLE> <xsl:apply-templates/> <HR/> <xsl:template match="konspekt"> <H3>Konspekt</H3> <xsl:apply-templates/> <xsl:template match="czesc_konspektu"> <H4><xsl:value-of <xsl:apply-templates/> <xsl:template match="p"> <P><xsl:apply-templates/></P> <xsl:template match="i"> <I><xsl:apply-templates/></I> <xsl:template match="ul"> <UL><xsl:apply-templates/></UL> <xsl:template match="li"> <LI><xsl:apply-templates/></LI> <xsl:template match="text()"> <xsl:value-of/> </xsl:stylesheet> Istotę działania XSL stanowi rekurencyjne przetwarzanie znaczników. Fraza <xsl:applytemplates/> jest wywołaniem owej rekurencji. Klauzule select zawężają zakres działania do wybranych elementów dokumentu. Klauzule match podają wzorzec znacznika, który jest przetwarzany za pomocą danej frazy template. Frazy value-of powodują włączenie odpowiedniej części przetwarzanego dokumentu do dokumentu wynikowego. Nazwy poprzedzone oznaczają odwołanie do wartości atrybutu. Efekty formatowania przykładowego dokumentu za pomocą powyższego skryptu przedstawia Rysunek 1. 7
8 Rysunek 1. Wynik formatowania dokumentu XML za pomocą XSL Możliwości języka XSL wykraczają daleko poza zwykłe formatowanie. Za pomocą XSL można np. wykonywać zarówno proste konwersje (np. na HTML, jak powyżej), jak złożone przetwarzanie danych. Takiemu przetwarzaniu poświęcona jest część specyfikacji XSL, nazwana XSLT (XSL Transformations). Wielkie możliwości stwarza także wykorzystanie umieszczanych w XSL skryptów proceduralnych, napisanych w języku ECMAScript (ustandaryzowanej odmianie Java- Scriptu). XQL Typową operacją wykonywaną na dokumentach i danych jest wyszukiwanie. Potrzebny jest zatem standardowy sposób zadawania warunków wyszukania. Pojawiła się więc propozycja specjalnego języka zapytań XQL (XML Query Language) [8], czerpiącego inspirację z języka zapytań dla obiektowych baz danych OQL, zaś składniowo zbliżonego do języka wzorców z XSL. XQL ma umożliwiać wyszukiwanie danych w dokumencie lub kolekcji dokumentów (np. repozytorium). Oto kilka przykładowych zapytań w XQL, wyszukujących w wcześniej podanym dokumencie XML: eres_konspekty/przedmiot zwraca wszystkie elementy typu przedmiot, bezpośrednio zawarte w elemencie eres_konspekty, eres_konspekty//slowo_kluczowe zwraca wszystkie elementy typu slowo_kluczowe zawarte (na którymkolwiek poziomie hierarchii) w elemencie eres_konspekty, przedmiot?/slowo_kluczowe zwraca wszystkie elementy typu slowo_kluczowe, bezpośrednio zawarte w elemencie przedmiot, oraz zawierające je elementy typu przedmiot (ale bez innych elementów podrzędnych), czesc_konspektu[@id<> Streszczenie ] zwraca wszystkie elementy typu czesc_konspektu o identyfikatorze różnym od podanego w warunku. Zapytanie w XQL ma bardzo prostą budowę i jest pozbawione ozdobnych słów kluczowych (typu select ), gdyż ma dawać użyć się jako fragment identifier w adresie URI. Bezpośrednim wynikiem zapytania w XQL jest zbiór elementów XML. Pożądaną cechą języków zapytań jest zgodność modelu danych wynikowych z modelem danych przeszukiwanych, 8
9 wynik zapytania w XQL powinien więc być poprawnym dokumentem XML. Aby to osiągnąć, zwrócone przez zapytanie elementy są opakowywane w element główny o nazwie xql:result. DOM Dane zawarte w dokumentach XML powinny dać się wygodnie przetwarzać w programach. Aby z zastosowania XML płynęła jakaś korzyść dla programistów tworzących takie programy, potrzebny jest standard dostępu do danych i uniwersalne narzędzia ułatwiające ten dostęp. Propozycją takiego standardu jest DOM (Document Object Model). Definiuje on obiektowy model dokumentu w XML oraz dostarcza zbioru klas i metod umożliwiających manipulowanie dokumentami XML z języków programowania Java, ECMAScript, VBScript i C++. API zgodne z DOM (np. wbudowane w przeglądarki WWW), umożliwiają wygodne manipulowanie dokumentami w typowych środowiskach programowania. Najbardziej znana implementacja DOM jest częścią MSIE 5.0. Pewną popularność zdobył także, spełniający podobne zadanie, model SAX (Simple API for XML), dla którego dostępne są darmowe parsery np. dla języka Java. Data Islands i DHTML W dokumentach HTML nie można przesyłać danych zapisanych w sposób sformalizowany, zdatnych do dalszego przetwarzania. Tymczasem takie dane są często potrzebne, np. by umożliwić łatwe wyszukanie dokumentu. Dotychczas stosowano sztuczki polegające na umieszczaniu sformalizowanych danych w komentarzach HTML. Obecnie pojawiła się nowa możliwość: w tekście HTML można umieszczać tzw. wyspy danych (data islands). Są to sformalizowane struktury zapisane w XML, a objęte specjalnym znacznikiem <XML> lub <SCRIPT language= XML >. Zawartość elementów takiej wyspy danych może być wykorzystana w skryptach DHTML (Dynamic HTML). Data island jest traktowana przez skrypty jak obiekt (XML Document Object) o nazwie wyznaczonej przez atrybut-identyfikator wyspy. Zastosowania XML W ciągu ostatniego roku język XML znacznie zyskał na popularności, pojawiło się bardzo wiele propozycji jego wykorzystania oraz sporo narzędzi wspomagających użycie XML. Podstawowe narzędzia Dostępne obecnie narzędzia dla XML to: parsery XML dla języków programowania, np. Java, C++; edytory do plików XML, ułatwiające manipulowanie strukturą danych; przeglądarki, umożliwiające bezpośrednie wyświetlanie dokumentów w XML. Najbardziej znanym produktem jest Microsoft Internet Explorer 5.0, zawierający obsługę modelu DOM oraz umożliwiający walidację dokumentów z użyciem DTD. MSIE potrafi prezentować dokumenty XML z wykorzystaniem arkuszy stylistycznych napisanych w językach XSL (co pokazuje Rysunek 1) oraz CSS. Wbudowano także generyczny styl do prezentacji dokumentów nie mających arkusza stylistycznego przykład pokazuje Rysunek 2. 9
10 Rysunek 2. Prezentacja dokumentu w XML bez arkusza stylistycznego Narzędziem towarzyszącym MSIE jest Microsoft XML Notepad prosty edytor ułatwiający manipulowanie strukturami dokumentów XML, zawierający walidację dokumentów. Wygląd ekranu tego edytora przedstawia Rysunek 3. Rysunek 3. Popularny edytor do XML Microsoft XML Notepad Wykorzystanie w programach powszechnego użytku XML uzyskał poparcie znaczących producentów oprogramowania i już jest używany w programach powszechnego użytku. Zapewne najbardziej znanym przykładem jest pakiet Microsoft Office W pakiecie tym umożliwiono zapis większości dokumentów (np. złożonych dokumentów tekstowych czy arkuszy kalkulacyjnych) w formacie HTML. Należało jednak zapewnić odwracalność zapisu, tzn. możliwość ponownego otworzenia przez programy MS Office tak zapisanego dokumentu bez utraty informacji. Możliwości HTML do tego nie wystarczają, zapis w HTML uzupełniono więc właśnie językiem XML. Zapisane w taki sposób dokumenty mogą być dystrybuowane w WWW, z zachowaniem możliwości ich pełnego odtworzenia do dalszej edycji. Dodatkowo rozwiązanie takie zapewnia możliwość wymiany dokumentów między różnymi wersjami oprogramowania dokumenty z przyszłych wersji MS Office będą mogły być prawidłowo czytane przez wersje wcześniejsze, a znaczniki niezrozumiałe dla starszych wersji będą po prostu ignorowane. 10
11 Ciekawym zastosowaniem XML, także związanym z MS Office, ale popieranym i przez innych producentów, jest język VML (Vector Markup Language). Służy on do definiowania i prezentowania grafiki wektorowej, a zapisywane są w nim m.in. rysunki OfficeArt wykonywane za pomocą programów pakietu MS Office. Przeglądarka MSIE 5.0 potrafi bezpośrednio wyświetlać takie rysunki. W3C prowadzi prace standaryzacyjne, mające na celu scalenie kilku istniejących propozycji specyfikacji grafiki wektorowej w jeden standard o nazwie Scalable Vector Graphics (SVG). Specjalizowane struktury danych Powstaje wiele języków specjalizowanych opartych na XML. Dotyczą one wielu bardzo różnych dziedzin. Kilka przykładów podano poniżej: zastosowania naukowe, np. MathML (Mathematical Markup Language), CML (Chemical Markup Language); modelowanie systemów, np. PIF-XML (Process Interchange Format XML), UXF (UML exchange Format), XMI (XML Metadata Interchange); różne projekty z dziedziny EDI (Electronic Data Interchange); finanse i bankowość, np. OFX/OFE (Open Financial Exchange), BIPS (Bank Internet Payment System); multimedia, np. SMIL (Synchronized Multimedia Integration Language), PGML (Precision Graphics Markup Language), czy wspomniany już VML. XML w systemach z bazami danych W zeszłorocznym referacie uskarżano się na brak wsparcia dla języka XML ze strony producentów narzędzi dla systemów z bazami danych, w szczególności Oracle. W ciągu roku sytuacja uległa znacznej zmianie: XML został przez producentów baz danych zauważony i jest włączany jako ważny element programów rozwoju. Pojawiły się też pierwsze narzędzia wspierające XML, a nawet specjalizowane serwery aplikacyjne. Oto przykłady: excelon firmy Object Design jest serwerem aplikacyjnym przetwarzającym dokumenty XML na struktury bazy danych (z możliwością wykorzystania języka zapytań XQL) oraz tworzącym dokumenty XML na podstawie zawartości bazy; Tamino firmy Software AG zawiera tzw. X-Machine składnicę danych w XML, zapisywanych w bazie danych bez konwersji na inną postać. XML a Oracle Firma Oracle zauważyła rosnącą rolę języka XML w budowaniu systemów informacyjnych, w szczególności systemów internetowych. Oracle bierze udział w pracach komitetów W3C przygotowujących standardy związane z XML (np. XML-Schema, XMI). Przygotowano też narzędzia wspierające wykorzystanie XML w aplikacjach z bazą danych Oracle. Pierwszym udostępnionym przez firmę narzędziem był pakiet PLSXML [9], zawierający trzy podstawowe składniki: DBXML narzędzie do generowania dokumentów XML na podstawie zapytań SQL; DBDOM API do manipulacji dokumentami XML z języka PL/SQL, zgodne z modelem DOM; DBXSL narzędzie do generowania arkuszy stylistycznych, prezentujących wyniki działania DBXML w postaci drzewa. Narzędzia te mogą być używane z bazami Oracle 7.3 i 8.0 i Oracle Web Application Server w wersji 3 lub nowszej. Wraz z pojawieniem się na rynku bazy Oracle8i powstała możliwość wykorzystania wbudowanej w DBMS maszyny wirtualnej języka Java (Oracle8i Java VM), procedur składowanych pisa- 11
12 nych w Javie i wydajnego interfejsu JDBC. Zbudowano zestaw narzędzi wspomagających wykorzystanie XML, nazwany Oracle Core XML Support [10]: Oracle XML Parser napisany w Javie parser zgodny ze standardami DOM i SAX, parser ten może być wykorzystywany przez programy w Javie działające we wszystkich warstwach architektury trójwarstwowej, także w składowanych w bazie procedurach w Javie; wsparcie dla XML w opcji ifs (Internet File System), pozwalające na automatyczną strukturalizację ładowanych do ifs dokumentów (zapis strukturalnych części dokumentów do tabel, przechowywanie części tekstowych w postaci tekstu); specjalne mechanizmy w opcji ConText, dostosowane do wyszukiwania w dokumentach w XML. Ponadto dostarczono szereg pomocniczych narzędzi ułatwiających tworzenie aplikacji wykorzystujących XML: parser XML dla języka PL/SQL, pozwalający na przetwarzanie dokumentów w XML za pomocą procedur napisanych w P/SQL; parsery XML dla języków C i C++; XML Class Generator for Java narzędzie pozwalające na podstawie DTD automatycznie wygenerować definicje klas służących do programowej manipulacji dokumentem; XML SQL Utility for Java zestaw gotowych klas służących do generowania dokumentów w XML na podstawie zapytań w SQL oraz do wczytywania dokumentów w XML do struktur bazy danych; Oracle XSQL Servlet przygotowana z wykorzystaniem XML SQL Utility aplikacja przeznaczona do wykonania na serwerze danych lub aplikacji (servlet), umożliwiająca wstawianie zapytań SQL wprost do dokumentów w XML i dynamiczne wykonywanie tych zapytań; pozwala także na dokonywanie przez serwer transformacji dokumentów w XML na podstawie skryptów w XSL. Podsumowanie Jak można się było spodziewać, język XML zdobywa coraz szersze uznanie i okazuje się przydatny w licznych zastosowaniach z wielu różnych dziedzin. Język zyskał poparcie wszystkich znaczących producentów oprogramowania. Jego specyfikacja jest nadal udoskonalana, dodawane są też nowe istotne komponenty. XML został zauważony także przez producentów baz danych. Pojawiły się narzędzia wspierające zastosowania XML w systemach z bazami danych. Także firma Oracle wyposażyła swe systemy zarządzania bazami danych w odpowiednie dodatki, ułatwiające wykorzystanie XML. XML staje się nowym, standardem przekazywania danych. Wydaje się atrakcyjny dla bardzo różnych grup użytkowników. Wykorzystanie XML stanie się zapewne już w najbliższych latach powszechne. Wpłynie to na pewno znacząco na rozwój technologii systemów informacyjnych, a w szczególnym stopniu na systemy internetowe i systemy z bazami danych. Literatura: [1] T.Traczyk, W.Macewicz: Język XML w aplikacjach z bazami danych możliwości zastosowania, pierwsze doświadczenia. Materiały IV Konferencji Developerów i użytkowników Oracle Ewolucja systemów informatycznych: dane, sprzęt, oprogramowanie i aplikacje, Zakopane [2] Extensible Markup Language (XML) 1.0. W3C Recommendation REC-XML [3] XML Linking Language (XLink). W3C Working Draft WD-xptr [4] XML Pointer Language (XPointer). W3C Working Draft WD-xlink [5] Extensible Stylesheet Language (XSL) 1.0. W3C Working Draft WD-xsl [6] Namespaces in XML. W3C Recommendation REC-xml-names [7] XML-Data. W3C Note, NOTE-XML-data
13 [8] J.Robbie: The Design of XQL. [9] PLMSQL Utilities and Demos. [10] XML Support in Oracle8i and Beyond. [11] T.Traczyk: Zastosowanie WWW w systemie wspomagającym zarządzanie dużym wydziałem wyższej uczelni. Materiały II szkoły PLOUG Rozproszone aplikacje baz danych, Zakopane
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
Bardziej szczegółowoWprowadzenie 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
Bardziej szczegółowoSł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
Bardziej szczegółowoExtensible 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
Bardziej szczegółowoPlan 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
Bardziej szczegółowoWprowadzenie 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
Bardziej szczegółowoextensible 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
Bardziej szczegółowoAplikacje 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
Bardziej szczegółowoModel 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
Bardziej szczegółowo5.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
Bardziej szczegółowo29. 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ę
Bardziej szczegółowo4 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
Bardziej szczegółowoPodstawy 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)
Bardziej szczegółowoUEK 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,
Bardziej szczegółowoKomunikacja 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
Bardziej szczegółowoWYKŁ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
Bardziej szczegółowoDariusz 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
Bardziej szczegółowoPlan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym
1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle
Bardziej szczegółowoKARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW
KARTA KURSU Nazwa Nazwa w j. ang. Przetwarzanie dokumentów XML i zaawansowane techniki WWW XML processing and advanced web technologies Kod Punktacja ECTS* 3 Koordynator dr Maria Zając Zespół dydaktyczny:
Bardziej szczegółowoMETODY REPREZENTACJI INFORMACJI
Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Magisterskie Studia Uzupełniające METODY REPREZENTACJI INFORMACJI Ćwiczenie 1: Budowa i rozbiór gramatyczny dokumentów XML Instrukcja
Bardziej szczegółowoXML 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
Bardziej szczegółowoDTD - 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,
Bardziej szczegółowoRok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu
Nazwa modułu: Elektroniczna wymiana danych w przemyśle Rok akademicki: 2013/2014 Kod: ZZIP-2-306-IN-s Punkty ECTS: 2 Wydział: Zarządzania Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka
Bardziej szczegółowoGML w praktyce geodezyjnej
GML w praktyce geodezyjnej Adam Iwaniak Kon-Dor s.c. Konferencja GML w praktyce, 12 kwietnia 2013, Warszawa SWING Rok 1995, standard de jure Wymiany danych pomiędzy bazami danych systemów informatycznych
Bardziej szczegółowoCzym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Bardziej szczegółowoRola 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
Bardziej szczegółowoXML 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
Bardziej szczegółowoPrezentacja 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
Bardziej szczegółowoPROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ
PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ Systemy baz danych 1. 2 Wstęp do baz danych 2. 2 Relacyjny model baz danych. 3. 2 Normalizacja baz danych. 4. 2 Cechy
Bardziej szczegółowoJę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
Bardziej szczegółowoXML 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
Bardziej szczegółowoOtwarte protokoły wymiany informacji w systemach ITS
Otwarte protokoły wymiany informacji w systemach ITS Grzegorz Kawka PHU TELSAT Sesja nr 4: Interoperacyjność systemów ITS cz. I Podstawą działania systemów ITS jest wymiana informacji pomiędzy poszczególnymi
Bardziej szczegółowoSzczegółowy opis zamówienia:
Szczegółowy opis zamówienia: Rok 2016 budowa stron w html5 (8h v + 4h ćw) 8 szt. html5 - zaawans. (7h v + 5h ćw) 8 szt. programowania w java script (9h v + 7h ćw) 8 szt. java script zaawans (8h v + 4h
Bardziej szczegółowoXPath 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
Bardziej szczegółowoRelacyjne 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
Bardziej szczegółowoBazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI
Bazy danych Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Wszechnica Poranna Trzy tematy: 1. Bazy danych - jak je ugryźć? 2. Język SQL podstawy zapytań. 3. Mechanizmy wewnętrzne baz danych czyli co
Bardziej szczegółowoPo 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
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Bardziej szczegółowoKazienko P.: Rodzina języków XML. Software nr 6 (90) czerwiec 2002, s. 22-27. Rodzina języków XML. Przemysław Kazienko
Rodzina języków XML Przemysław Kazienko Rok 2001 przyniósł kilka ważnych wydarzeń związanych z językiem XML. Można powiedzieć, że ukończony został drugi etap jego rozwoju (pierwszym było opublikowanie
Bardziej szczegółowoZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia
ZP/ITS/11/2012 Załącznik nr 1a do SIWZ ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia Przedmiotem zamówienia jest: Przygotowanie zajęć dydaktycznych w postaci kursów e-learningowych przeznaczonych
Bardziej szczegółowoCzęść II. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Część II Po zrealizowaniu materiału student będzie w stanie posługiwać się taksonomiami XBRL wygenerować sprawozdanie finansowe w XBRL odczytać i zmodyfikować sprawozdanie finansowe zapisane w XBRL rozpoznawać
Bardziej szczegółowoWprowadzenie 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
Bardziej szczegółowoDokument 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
Bardziej szczegółowoAplikacje 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
Bardziej szczegółowoINTEGRACJA 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
Bardziej szczegółowoUEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Po zrealizowaniu materiału student będzie w stanie omówić korzyści dla firm wynikające ze stosowania EDI przedstawić dotychczasowe standardy EDI oraz zaprezentować nowe tendencje: XML i ebxml omówić tło
Bardziej szczegółowoXML 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
Bardziej szczegółowoI. KARTA PRZEDMIOTU CEL PRZEDMIOTU
I. KARTA PRZEDMIOTU 1. Nazwa przedmiotu: TECHNOLOGIA INFORMACYJNA 2. Kod przedmiotu: Ot 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Automatyka i Robotyka 5. Specjalność: Informatyka
Bardziej szczegółowoI. KARTA PRZEDMIOTU CEL PRZEDMIOTU
I. KARTA PRZEDMIOTU 1. Nazwa przedmiotu: TECHNOLOGIA INFORMACYJNA 2. Kod przedmiotu: Ot 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Automatyka i Robotyka 5. Specjalność: Elektroautomatyka
Bardziej szczegółowoPrzykł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
Bardziej szczegółowoBazy 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
Bardziej szczegółowoOfficeObjects e-forms
OfficeObjects e-forms Rodan Development Sp. z o.o. 02-820 Warszawa, ul. Wyczółki 89, tel.: (+48-22) 643 92 08, fax: (+48-22) 643 92 10, http://www.rodan.pl Spis treści Wstęp... 3 Łatwość tworzenia i publikacji
Bardziej szczegółowoSpis treści. Przedmowa
Spis treści Przedmowa V 1 SQL - podstawowe konstrukcje 1 Streszczenie 1 1.1 Bazy danych 1 1.2 Relacyjny model danych 2 1.3 Historia języka SQL 5 1.4 Definiowanie danych 7 1.5 Wprowadzanie zmian w tabelach
Bardziej szczegółowoSpis wzorców. Działania użytkownika Strona 147 Obsługa większości Działań użytkownika za pomocą kodu JavaScript przy użyciu metod obsługi zdarzeń.
Spis wzorców Aplikacja Ajax Strona 73 Tworzenie Aplikacji Ajax złożonych aplikacji, które można uruchomić w dowolnej współczesnej przeglądarce internetowej. Bezpośrednie logowanie Strona 509 Uwierzytelnianie
Bardziej szczegółowoXML 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
Bardziej szczegółowoXML 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 Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 1
Bardziej szczegółowoTom 6 Opis oprogramowania
Część 4 Narzędzie do wyliczania wielkości oraz wartości parametrów stanu Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 30 maja 2012 Historia dokumentu Nazwa
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoObiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody
Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,
Bardziej szczegółowoInstalacja SQL Server Express. Logowanie na stronie Microsoftu
Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki
Bardziej szczegółowoPHP: bazy danych, SQL, AJAX i JSON
1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji
Bardziej szczegółowoExtensible 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
Bardziej szczegółowoTypy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone
Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa
Bardziej szczegółowoAnaliza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas
Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy
Bardziej szczegółowoPLAN 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
Bardziej szczegółowoZasady 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...
Bardziej szczegółowoPlan. Raport. Tworzenie raportu z kreatora (1/3)
3 Budowa prostych raportów opartych o bazę danych Plan Co to jest raport? Tworzenie za pomocą kreatora Tworzenie opartego o polecenie SQL Edycja atrybutów Atrybuty regionu Atrybuty Atrybuty kolumn 2 Raport
Bardziej szczegółowoWstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9
Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Uruchamianie edytora OpenOffice.ux.pl Writer 9 Dostosowywanie środowiska pracy 11 Menu Widok 14 Ustawienia dokumentu 16 Rozdział 2. OpenOffice
Bardziej szczegółowoKlasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny
Klasa 2 INFORMATYKA dla szkół ponadgimnazjalnych zakres rozszerzony Założone osiągnięcia ucznia wymagania edukacyjne na poszczególne oceny Algorytmy 2 3 4 5 6 Wie, co to jest algorytm. Wymienia przykłady
Bardziej szczegółowoŚrodowisko publikacyjne oparte na XML-u. Szymon Zioło 1 maja 2004
Ś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).
Bardziej szczegółowoNIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna
NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI asix Aktualizacja pakietu asix 4 do wersji 5 lub 6 Pomoc techniczna Dok. Nr PLP0016 Wersja:08-12-2010 ASKOM i asix to zastrzeżony znak firmy ASKOM Sp. z o. o.,
Bardziej szczegółowoWymagania dla cyklu dwugodzinnego w ujęciu tabelarycznym. Gimnazjum nr 1 w Miechowie
Wymagania dla cyklu dwugodzinnego w ujęciu tabelarycznym Gimnazjum nr 1 w Miechowie Informatyka Lp. Uczeń: 1. Zna regulamin i przepisy BHP w pracowni komputerowej 2. Wie, na czym polega bezpieczna praca
Bardziej szczegółowoTomasz Grześ. Systemy zarządzania treścią
Tomasz Grześ Systemy zarządzania treścią Co to jest CMS? CMS (ang. Content Management System System Zarządzania Treścią) CMS definicje TREŚĆ Dowolny rodzaj informacji cyfrowej. Może to być np. tekst, obraz,
Bardziej szczegółowoJę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ń.
Bardziej szczegółowoI. KARTA PRZEDMIOTU CEL PRZEDMIOTU
I. KARTA PRZEDMIOTU. Nazwa przedmiotu: TECHNOLOGIA INFORMACYJNA 2. Kod przedmiotu: Ot 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Mechanika i budowa maszyn 5. Specjalność: Eksploatacja
Bardziej szczegółowo1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)
1 90 min. Aplikacje WWW Harmonogram ń, semestr zimowy -2017 (studia stacjonarne) 6 października Wprowadzenie do aplikacji WWW Rys historyczny Składniki architektury WWW o klient HTTP o serwer HTTP o protokół
Bardziej szczegółowoXQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
Bardziej szczegółowoO stronach www, html itp..
O stronach www, html itp.. Prosty wstęp do podstawowych technik spotykanych w internecie 09.01.2015 M. Rad Plan wykładu Html Przykład Strona www Xhtml Css Php Js HTML HTML - (ang. HyperText Markup Language)
Bardziej szczegółowoINFORMATYKA Pytania ogólne na egzamin dyplomowy
INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja
Bardziej szczegółowoPropozycja standaryzacji usługi lokalizacji adresu
dr inż. Waldemar Izdebski 1,2 mgr inż. Andrzej Bielasty 2 Propozycja standaryzacji usługi lokalizacji adresu Numery adresowe są jednym z najprostszych elementów danych przestrzennych. Niemniej jednak są
Bardziej szczegółowoFront-end: solidne podstawy. Wszystko, co warto wiedzieć o HTML, CSS, JavaScript i Bootstrap.
Kod szkolenia: Tytuł szkolenia: FRONT-END Front-end: solidne podstawy. Wszystko, co warto wiedzieć o HTML, CSS, JavaScript i Bootstrap. Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest zarówno dla
Bardziej szczegółowoCENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI
CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI Instrukcja użytkownika Narzędzie do modelowania procesów BPEL Warszawa, lipiec 2009 r. UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ
Bardziej szczegółowoE.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, Spis treści
E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, 2014 Spis treści Przewodnik po podręczniku 8 Wstęp 10 1. Hipertekstowe języki znaczników 1.1. Elementy i znaczniki
Bardziej szczegółowoPlan. Aplikacja. Architektura aplikacji. Architektura aplikacji Tworzenie aplikacji Application Builder podstawy
Plan Podstawy narzędzia Application Builder, 2 budowa strony, kreatory Architektura Tworzenie Tworzenie formularza tabelarycznego Budowa strony 2 Architektura Aplikacja kolekcja stron połączonych ze sobą
Bardziej szczegółowoLiczba godzin. N (nauczyciel) studia niestacjonarne
OPIS MODUŁU KSZTAŁCENIA (przedmiot lub grupa przedmiotów) Nazwa modułu Przedmioty Wprowadzenie do programowania aplikacji internetowych Nazwa jednostki prowadzącej przedmiot Instytut Matematyki kierunek
Bardziej szczegółowoWykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych
Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław
Bardziej szczegółowoWorld 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
Bardziej szczegółowoegroupware czy phpgroupware jest też mniej stabilny.
Opengroupware to projekt udostępniający kompletny serwer aplikacji oparty na systemie Linux. Dostępny na licencji GNU GPL, strona domowa: http://www.opengroupware.org/ Jego cechy to wysoka stabilność,
Bardziej szczegółowoBazy danych 2. Wykład 1
Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu
Bardziej szczegółowoXML 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ć
Bardziej szczegółowoBudowa i oprogramowanie komputerowych systemów sterowania. Laboratorium 4. Metody wymiany danych w systemach automatyki DDE
Budowa i oprogramowanie komputerowych systemów sterowania Laboratorium 4 Metody wymiany danych w systemach automatyki DDE 1 Wprowadzenie do DDE DDE (ang. Dynamic Data Exchange) - protokół wprowadzony w
Bardziej szczegółowoWitryny i aplikacje internetowe - rozkład godzin dla technikum informatycznego
Witryny i aplikacje internetowe - rozkład godzin dla technikum informatycznego w oparciu o Program nauczania dla zawodu technik informatyk 351203 o strukturze przedmiotowej, Warszawa 2012. Minimalna ilość
Bardziej szczegółowoPLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
Bardziej szczegółowoc 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ć
Bardziej szczegółowoMINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI
MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI ul. Wspólna 1/3 00-529 Warszawa ZASADY NAZEWNICTWA DOKUMENTÓW XML Projekt współfinansowany Przez Unię Europejską Europejski Fundusz
Bardziej szczegółowoMinisterstwo Finansów
Ministerstwo Finansów Departament Informatyzacji Specyfikacja Wejścia-Wyjścia Wersja 1.0 Warszawa, 16.02.2017 r. Copyright (c) 2017 Ministerstwo Finansów MINISTERSTWO FINANSÓW, DEPARTAMENT INFORMATYZACJI
Bardziej szczegółowo2 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
Bardziej szczegółowoSemistrukturalne bazy danych Wykład dla studentów matematyki
Semistrukturalne bazy danych Wykład dla studentów matematyki 30 maja 2015 Dane semistrukturalne Dzięki WWW i Internetowi łatwo umieszczać informacje w sieci tak, żeby były powszechnie dostępne. Chęć wykorzystania
Bardziej szczegółowo