XML i nowoczesne metody zarządzania treścią



Podobne dokumenty
Inne standardy zwiazane z XML

Inne standardy zwiazane z XML

XML w bazach danych, standardy wiążące dokumenty XML

Część II. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

XML i nowoczesne metody zarządzania treścią

Słowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0

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

ZałoŜenia tworzenia i funkcjonowania bazy podmiotów działających na rzecz aktywizacji zawodowej i rozwoju przedsiębiorczości

Rola języka XML narzędziem

XML w bazach danych i bezpieczeństwie

XML i nowoczesne metody zarządzania treścią

Rodzaje przetwarzania XSLT (1) XSLT część 2. Inne standardy związane z XML-em. Rodzaje przetwarzania XSLT (2) Zmienne. Zaawansowane możliwości XSLT

Wprowadzenie do technologii XML

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

mgr inż. Jacek Staniec Język XML

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

Technologie informacyjne

Dlaczego GML? Gdańsk r. Karol Stachura

Wykorzystano fragmenty wykładu Krystyny Dziubich GRAFIKA WEKTOROWA. Aplikacje i Usługi Internetowe KASK ETI Politechnika Gdańska.

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

GML w praktyce geodezyjnej

Komunikacja i wymiana danych

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

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

XPath 2.0 / XSLT 2.0 / XQuery 1.0. Inne standardy związane z XML-em. XPath 2.0 XSLT 2.0. XPath 2.0 funkcyjny język programowania

XML i nowoczesne technologie zarządzania treścią

Rok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu

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

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

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT

2 Podstawy tworzenia stron internetowych

SGML a XML różnice. XML a SGML. Standardy pokrewne. Minimalizacja w SGML-u. Elementy w SGML-u. Atrybuty w SGML-u

Tomasz Grześ. Systemy zarządzania treścią

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema

Zakres tematyczny dotyczący programu Microsoft Office PowerPoint

dlibra 3.0 Marcin Heliński

Przykładowy dokument XML

Pierwsza strona internetowa

Wykład 1: Tekstowe dokumenty elektroniczne strona 1. Wykład 1: Tekstowe dokumenty elektroniczne

Model semistrukturalny

Kazienko P.: Rodzina języków XML. Software nr 6 (90) czerwiec 2002, s Rodzina języków XML. Przemysław Kazienko

Elementarz HTML i CSS

ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści

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

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema. Elementy czy atrybuty? Wartości domyślne i ustalone. Elementy czy atrybuty?

Kartografia multimedialna krótki opis projektu. Paweł J. Kowalski

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

Prezentacja i transformacja

Otwarte protokoły wymiany informacji w systemach ITS

STRONY INTERNETOWE mgr inż. Adrian Zapała

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

Jacek Tomaszczyk Instytut Bibliotekoznawstwa i Informacji Naukowej Uniwersytet Śląski

XML. XML (ang. Extensible Markup Language) - Rozszerzalny język znaczników. Aktualna wersja 1.0 (1.1 czeka na akceptację) Należy do rodziny SGML.

Pakiet XML Czym jest i z czym się je?

Otwarte standardy jako podstawa społeczeństwa informacyjnego w Polsce

KARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW

Standardy meta danych w administracji publicznej

Format danych adnotacji do tytułów wykonawczych przekazywanych do organów egzekucyjnych przez epuap w związku ze zbiegiem egzekucji

O stronach www, html itp..

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

MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

Metadane w Jagiellońskiej Bibliotece Cyfrowej. Piotr Myszkowski

Pracownia komputerowa. Dariusz Wardecki, wyk. IX

Programowanie internetowe

Podstawy elektronicznej wymiany danych. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Format danych adnotacji do tytułów wykonawczych przekazywanych do organów egzekucyjnych przez epuap w związku ze zbiegiem egzekucji

Facelets ViewHandler

rk HTML 4 a 5 różnice

XML w bazach danych i bezpieczeństwie

Dlaczego OpenSouce jest atrakcyjne

Relacyjne bazy danych a XML

Drugi rok nauczania semestr I. Ocena Tematyka Dopuszczająca Dostateczna Dobra Bardzo dobra Multimedia

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

Opis standardu. Dokumenty w postaci czystego (niesformatowanego) zbioru znaków zapisanych w standardzie Unicode UTF-8 jako pliki typu.

ROZPORZĄDZENIE RADY MINISTRÓW. z dnia 11 października 2005 r. w sprawie minimalnych wymagań dla systemów teleinformatycznych

Zasady budowy i przekazywania komunikatów wykorzystywanych w Systemie IT KDPW_CCP

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

ROZPORZĄDZENIE RADY MINISTRÓW. z dnia 11 października 2005 r. (Dz. U. z dnia 28 października 2005 r.)

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

Recent trends in development of open XML applications

Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.

Tom 6 Opis oprogramowania

WYMAGANIA EDUKACYJNE. Witryny i Aplikacje Internetowe klasa I

Technologie informacyjne - wykład 10 -

OfficeObjects e-forms

Dodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski

używane skróty: HTTP - protokół do transferu tekstu, hipertekstu, zbiorów binarnych URL - jednolity lokalizator zasobów

Standard HL7 (cel, protokoły, zastosowanie) Piotr Dybski Jan Flik

Poziomy wymagań Konieczny K Podstawowy- P Rozszerzający- R Dopełniający- D Uczeń:

XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Języki i standardy oparte na XML-u. Przegląd zastosowań XML-a. Zastosowania XML-a. Zastosowania XML-a. Zastosowania XML-a. Zastosowania XML-a

Opracowywanie map w ArcGIS Online i MS Office. Urszula Kwiecień Esri Polska

1. Zaczynamy! (9) 2. Edycja dokumentów (33)

Web Services. Wojciech Mazur. 17 marca Politechnika Wrocławska Wydział Informatyki i Zarządzania

Liczba godzin. N (nauczyciel) studia niestacjonarne

Transkrypt:

XML i nowoczesne metody zarządzania treścią Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a Maciej Ogrodniczuk MIMUW, 5 grudnia 2011 Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 1

XPointer Standard definiuje adresowanie dokumentów XML-owych i ich fragmentów, zgodnie ze składnią URI: http://www.sejm.gov.pl/ustawa.xml#def-podatnik 3 rekomendacje W3C z 2003 r.: XPointer Framework (http://www.w3.org/tr/xptr-framework/), XPointer element() Scheme (http://www.w3.org/tr/xptr-element/), XPointer xmlns() Scheme (http://www.w3.org/tr/xptr-xmlns/), XPointer xpointer() Scheme (http://www.w3.org/tr/xptr-xpointer/, Working Draft). Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 2

Schematy xpointer i xmlns xpointer: Ścieżki XPath: http://www.sejm.gov.pl/ustawa.xml #xpointer(/art[5]/par[2]) xmlns: Obsługa przestrzeni nazw Do wykorzystania w dalszej części ścieżki: ustawa.xml#xmlns(pr=http://www.sejm.gov.pl/prawo) xpointer(/art[5]/par[2]) Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 3

Schemat element() Przykłady: element z atrybutem ID o podanej wartości: dokument.xml#element(def-podatnik) element o podanej pozycji (ew. względem elementu z atrybutem ID o podanej wartości): dokument.xml#element(/1/4/3) dokument.xml#element(def-podatnik/2/3) składnia skrócona: dokument.xml#def-podatnik dokument.xml#/1/4/3 dokument.xml#def-podatnik/2/3 Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 4

XInclude włączanie zawartości dokumentów Cel: włączanie zawartości jednego dokumentu XML do innego. Rekomendacja W3C XML Inclusions (XInclude) 1.0 z 2006 r. Możliwości: włączanie całych dokumentów (nazwa pliku lub URL), włączanie fragmentów (wskazanych przez XPointer), określanie zawartości używanej w razie błędu. http://www.w3.org/tr/xinclude/ Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 5

XInclude przykład Źródło: <wynik> <xi:include xmlns:xi="http://www.w3.org/2001/xinclude" href="salatka.xml#xpointer(/przepis/tytuł)"> <xi:fallback> <błąd>brak przepisu</błąd> </xi:fallback> </xi:include> </wynik> Wynik przetworzenia: <wynik> <tytuł>sałatka z ogórków</tytuł> </wynik> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 6

Typowe przykłady zastosowań XML-a Możliwości: zarządzanie treścią (dokumenty tworzone przez człowieka i przeznaczone dla człowieka, o długim czasie życia), np. Wielka Encyklopedia Powszechna PWN, elektroniczna wymiana danych komunikacja między aplikacjami (dokumenty tworzone oraz przetwarzane automatycznie, zazwyczaj kończące życie wraz z końcem komunikacji), np. komunikaty o błędach, wiele, wiele innych! Zastosowań jest nieskończenie wiele, bo tyle właśnie może powstać XML-owych struktur danych używanych w przeróżnych zastosowaniach. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 7

Popularne zastosowania XML Po prostu różne modele dokumentów (różne DTD/XML Schema) dla różnych celów: zapis tekstu: XML DocBook, TEI Text Encoding Initiative, ODF (OpenDocument), Office Open XML, zapis metainformacji (metadanych): Dublin Core, RDF Resource Description Framework, Topic Maps, zapis informacji naukowych: MathML Matematical Markup Language, multimedia: SVG Scalable Vector Graphics. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 8

DocBook Przeznaczony do kodowania dokumentacji oprogramowania: struktura książki i artykułu, dodatkowe struktury specyficzne dla dokumentacji oprogramowania. Łatwy do dostosowania do własnych potrzeb: silnie sparametryzowane DTD (możliwość włączania/wyłączania poszczególnych elementów struktury), większość zmian można uzyskać bez modyfikowania DTD. Prace od 1991 r., obecna wersja: 5.1b4, zarządzana przez OASIS. Przyjęty z otwartymi ramionami przez środowisko open-source i używany do tworzenia dokumentacji wielu projektów (KDE, GNOME, dokumentacja jądra Linuksa,...) Z racji wieku standardu istnieje bardzo wiele narzędzi do jego obsługi (edytory WYSIWYG, przekształcenia XSLT,...) http://www.docbook.org Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 9

DocBook przykład Element główny <book> (książka), oprócz tego rozdziały, sekcje, streszczenia, wtrącenia, listy... <book xml:id="książka" version="5.0" xmlns="http://docbook.org/ns/docbook"> <title>świat Zofii</title> <chapter xml:id="rozdział1"> <title>ogród Edenu</title> <para>komu 3000 lat nie mówią nic, niech w ciemności niewiedzy żyje z dnia na dzień.</para> <para>--- <emphasis>goethe</emphasis></para> </chapter> <chapter xml:id="rozdział2"> <title>cylinder</title> <para>zdziwienie jest tą przyczyną, dla której ludzie zaczęli filozofować.</para>... </chapter> </book> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 10

TEI TEI (ang. Text Encoding Initiative) standard zapisu danych humanistycznych i lingwistycznych. prace od 1987 r., początkowo wersje SGML-owe, obecnie XML-owa, obecna wersja: P5 z 2007 r., schemat zawiera moduły (zestawy znaczników) włączane w zależności od potrzeb. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 11

TEI przykład <TEI xmlns="http://www.tei-c.org/ns/1.0"> <teiheader>... </teiheader> <text> <body> <schemaspec ident="odd1" start="tei"> <moduleref key="header"/> <moduleref key="core"/> <moduleref key="tei"/> <moduleref key="textstructure"/> </schemaspec> </body>... </text> </TEI> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 12

TEI przykład minimalnego nagłówka <teiheader> <filedesc> <titlestmt> <title>opowiadania "Złoty żuk" i "Wahadło", wersja elektroniczna</title> <author>poe, Edgar Allan</author> <respstmt> <resp>wyboru dokonał</resp> <name>james D. Benson</name> </respstmt> </titlestmt> <publicationstmt>... </publicationstmt> <sourcedesc>... </sourcedesc> </filedesc> </teiheader> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 13

TEI przykład minimalnego nagłówka <teiheader> <filedesc> <titlestmt>... </titlestmt> <publicationstmt> <distributor>oxford Text Archive</distributor> </publicationstmt> <sourcedesc> <bibl>the complete writings of Edgar Allan Poe, collected and edited by Phillip S. Foner (New York, Citadel Press, 1945)</bibl> </sourcedesc> </filedesc> </teiheader> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 14

MathML Mathematical Markup Language MathML to język służący do zapisu wzorów i symboli matematycznych. Aktualna wersja 3.0 (wydana w 2010 r.) Dwa dialekty MathML-a (można łączyć): składnia prezentacyjna (ang. presentational markup) 30 elementów, 50 atrybutów, składnia semantyczna (ang. content markup) ok. 100 elementów, 12 atrybutów. http://www.w3.org/math/ http://www.dessci.com/en/reference/mathml/default.htm Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 15

MathML przykład (a + b) 2 Składnia prezentacyjna: <mrow> <msup> <mfenced> <mrow> <mi>a</mi> <mo>+</mo> <mi>b</mi> </mrow> </mfenced> <mn>2</mn> </msup> </mrow> Składnia semantyczna: <mrow> <apply> <power/> <apply> <plus/> <ci>a</ci> <ci>b</ci> </apply> <cn>2</cn> </apply> </mrow> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 16

SVG Pozwala opisywać dwuwymiarową grafikę: kształty wektorowe (złożone z linii prostych i krzywych), obrazy rastrowe, tekst (który jest wciąż tekstem, nie zbiorem kształtów), grupowanie, transformacje, filtry,... Aktualna wersja: 1.1 z 2011 r. (TR) http://www.w3.org/graphics/svg/ Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 17

SVG Pozwala opisywać dwuwymiarową grafikę: kształty wektorowe (złożone z linii prostych i krzywych), obrazy rastrowe, tekst (który jest wciąż tekstem, nie zbiorem kształtów), grupowanie, transformacje, filtry,... Aktualna wersja: 1.1 z 2011 r. (TR) Niebieskie koło z czerwoną obwódką i czarny trójkąt: <svg> <circle style="fill: blue; stroke: red" cx="200" cy="200" r="100"/> </svg> http://www.w3.org/graphics/svg/ Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 17

SVG Pozwala opisywać dwuwymiarową grafikę: kształty wektorowe (złożone z linii prostych i krzywych), obrazy rastrowe, tekst (który jest wciąż tekstem, nie zbiorem kształtów), grupowanie, transformacje, filtry,... Aktualna wersja: 1.1 z 2011 r. (TR) Niebieskie koło z czerwoną obwódką i czarny trójkąt: <svg> <circle style="fill: blue; stroke: red" cx="200" cy="200" r="100"/> <path d="m250 150 L150 350 L350 350 Z"/> </svg> http://www.w3.org/graphics/svg/ Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 17

Dublin Core Standard reprezentacji metadanych do opisu zasobów (ISO 15836). Utrzymywany przez DCMI (Dublin Core Metadata Initiative) organizację promującą stosowanie standardów metadanych i rozwój specjalizowanych słowników pojęć do opisu zasobów. The original objective of the Dublin Core was to define a set of elements that could be used by authors to describe their own Web resources. (...) The goal was to define a few elements and some simple rules that could be applied by noncatalogers. http://dublincore.org Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 18

Dublin Core elementy opisu Standard definiuje 15 elementów: <dc:title> tytuł/nazwa opisywanego zasobu, <dc:creator> twórca zasobu, <dc:subject> temat poruszanego zagadnienia, <dc:description> opis, <dc:publisher> wydawca (podmiot odpowiedzialny za udostępnienie), <dc:contributor> współtwórca, <dc:date> data wydarzenia z życia zasobu, <dc:type> typ/rodzaj zawartości zasobu, <dc:format> format (fizyczny lub cyfrowy), <dc:identifier> identyfikator zasobu, <dc:source> źródło pochodzenia informacji zawartych w zasobie, <dc:language> język zawartości, <dc:relation> odniesienie do powiązanych zasobów, <dc:coverage> dziedzina/obszar objęty zawartością zasobu, <dc:rights> informacja o prawach do zasobu. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 19

Dublin Core przykład RDF: <rdf:description> <dc:title>wartość energetyczna napojów</dc:title> <dc:publisher>jürgen Lager</dc:publisher> <dc:description>czy lepiej dostać w głowę pustą czy pełną butelką piwa?</dc:description> <dc:date>2009-06-01</dc:date> <dc:language>pl</dc:language> </rdf:description> HTML: <meta name="dc.title" lang="pl" content="vaccaonomastyka stosowana"> <meta name="dc.creator" content="jan Byczewski"> <meta name="dc.description" lang="pl" content="krowy obdarzone imionami dają więcej mleka niż bezimienne."> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 20

OpenDocument OpenDocument (ODF, OASIS Open Document Format for Office Applications, ISO/IEC 26300) to otwarty standard formatu plików pakietów biurowych. zakres: dokumenty tekstowe, arkusze kalkulacyjne, wykresy i prezentacje multimedialne, historia: prace od 2002 r.; pierwsza wersja formatu bazowała na XML-owym formacie pakietu OpenOffice.org, obecnie jest rozwijana przez OASIS (Organization for the Advancement of Structured Information Standards), standard ISO od 2006 r., aktualna wersja standardu: 1.1 (rok 2007), trwają prace nad wersją 1.2, cel: stworzenie otwartej alternatywy dla formatów pakietu Microsoft Office. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 21

ODF? Kto tego używa? Programy obsługujące OpenDocument: OpenOffice.org, KOffice, Google Docs, LotusNotes R8... Prezentowany jako alternatywa dla formatów uchodzących za otwarte (np. Office Open XML), lecz nie powstałych na drodze porozumienia pomiędzy dostawcami oprogramowania biurowego oraz użytkownikami (w tym rządami państw). Unia Europejska i MSWiA rekomendują OpenDocument jako bazę dla standardowych formatów plików i wymiany dokumentów. http://docs.oasis-open.org/office/v1.1/os/opendocument-v1.1.pdf Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 22

ODF od środka Dwa sposoby zapisu dokumentu: w pojedynczym dokumencie XML-owym (<office:document>), w pakiecie zawierającym pliki: content.xml: treść dokumentu (<office:document-content>), styles.xml: style (<office:document-styles>), meta.xml: metadane (<office:document-meta>), settings.xml: dane aplikacji (<office:document-settings>). Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 23

Przestrzenie nazw ODF (czyli zestawy znaczników) office dla elementów ogólnych, nie należących do innych przestrzeni nazw, meta dla metadanych, config dla ustawień aplikacji, text dla elementów opisujących fragmenty tekstu (także np. zawartość komórki arkusza kalkulacyjnego), table dla elementów tabelarycznych, drawing, presentation, form, script, style,... Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 24

ODF przykład metadanych <office:meta> <dc:title>dlaczego dzięcioły nie cierpią na wstrząs mózgu?</dc:title> <dc:creator>philip May</dc:creator> <dc:date>1999-10-19t15:16:17</dc:date> <meta:editing-duration>pt5h10m10s</meta:editing-duration> <meta:keyword>dzięcioł</meta:keyword> <meta:keyword>wstrząśnienie mózgu</meta:keyword> <meta:user-defined meta:name="źródło" meta:value-type="string">ignoble 2006</meta:value> </meta:user-defined> </office:meta> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 25

ODF przykład zawartości dokumentu <office:document-content xmlns:office="..."... office:version="1.0"> <office:automatic-styles> <style:style style:name="p" style:family="paragraph"> <style:paragraph-properties fo:text-align="center"/> <style:text-properties style:font-name="arial" fo:font-size="18pt" fo:font-weight="bold"/> </style:style> </office:automatic-styles> <office:body> <office:text> <text:p text:style-name="p">format OpenDocument jest standardem <text:a xlink:type="simple" xlink:href="http://oasis-open.org"> OASIS</text:a></text:p> </office:text> </office:body> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 26

Office Open XML Office Open XML (OOXML, OpenXML, MSOOXML) to alternatywna do OpenDocument specyfikacja dokumentów elektronicznych mająca zapewnić wsteczną zgodność z istniejącymi dokumentami w formatach Microsoft Office oraz pełną obsługę funkcji oferowanych przez ten pakiet. Historia: 2006: specyfikacja zatwierdzona jako standard ECMA International, 2007: porażka w głosowaniu nad szybką ścieżką zatwierdzenia OOXML jako standardu ISO, 2008: standard jednak przyjęty. http://www.ecma-international.org/publications/standards/ecma-376.htm Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 27

OOXML w pigułce Struktura pliku: dokument OOXML to pakiet (skompresowany ZIP), wewnątrz: pliki XML-owe zawierające dane, metadane,... zgodne z językami znacznikowymi: WordprocessingML (\word\document.xml, \word\styles.xml...), SpreadsheetML, PresentationML,... kompatybilne z binarnymi formatami MS Office w zakresie reprezentowalności ich możliwości, niekompatybilne z XML-owymi formatami Office XP i 2003. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 28

WordProcessingML Typowa struktura dokumentu: <w:document> element główny, <w:body> kolekcja akapitów i własności sekcji, <w:p> akapit (kolekcja fragmentów), <w:r> fragment tekstu o określonych własnościach (ciąg, ang. run), <w:t> czysty tekst (ang. text range). <w:document xmlns:w="..."> <w:body> <w:p> <w:r> <w:t>hello, world.</w:t> </w:r> </w:p> </w:body> </w:document> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 29

WordProcessingML przykład z życia <w:p> <w:ppr> <w:jc w:val="center"/> </w:ppr> <w:r> <w:t>to</w:t> </w:r> <w:r> <w:rpr> <w:b/> </w:rpr> <w:t>naprawdę</w:t> </w:r> <w:r> <w:t>ty?</w:t> </w:r> </w:p> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 30

OOXML kontra OpenDocument: wojna standardów Fanatycy ODF: Wasza specyfikacja ma 6000 stron! Ciężko będzie to wdrożyć w całości... Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Fanatycy ODF: Wasza specyfikacja ma 6000 stron! Ciężko będzie to wdrożyć w całości... Wielbiciele OOXML: Ale tam są przykłady i dokładne opisy, a w ODF-ie tylko spis znaczników! Poza tym musimy zachować kompatybilność z dokumentami Office, bo jest ich dużo, czego nie można powiedzieć o ODF... Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Fanatycy ODF: Wasza specyfikacja ma 6000 stron! Ciężko będzie to wdrożyć w całości... Wielbiciele OOXML: Ale tam są przykłady i dokładne opisy, a w ODF-ie tylko spis znaczników! Poza tym musimy zachować kompatybilność z dokumentami Office, bo jest ich dużo, czego nie można powiedzieć o ODF... Fanatycy ODF: W ODF-ie można reprezentować to samo, co w OOXML-u. Więcej i lepiej, bo wasza specyfikacja zawiera błędy. Dlaczego rok 1900 jest przestępny? Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Wielbiciele OOXML: A ODF jest prostacki w porównaniu z OOXML-em! Używacie jednego typu tabeli dla wszystkich rodzajów dokumentów... Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Wielbiciele OOXML: A ODF jest prostacki w porównaniu z OOXML-em! Używacie jednego typu tabeli dla wszystkich rodzajów dokumentów... Fanatycy ODF: Nie jest prostacki, tylko prosty. I elegancki w swej prostocie. Gdybyście nam pomogli, też byście tak mieli. MS był członkiem OASIS, kiedy powstawał ODF. Dlaczego robiliście swoje pod stołem? Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Wielbiciele OOXML: A ODF jest prostacki w porównaniu z OOXML-em! Używacie jednego typu tabeli dla wszystkich rodzajów dokumentów... Fanatycy ODF: Nie jest prostacki, tylko prosty. I elegancki w swej prostocie. Gdybyście nam pomogli, też byście tak mieli. MS był członkiem OASIS, kiedy powstawał ODF. Dlaczego robiliście swoje pod stołem? Wielbiciele OOXML: Bo chcieliście dać przewagę OpenOffice. Nie dalibyśmy rady tego tego wdrożyć w 2005 r. OpenOffice już używał ODF-u, a my dopiero zaczynaliśmy. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Fanatycy ODF: Eeee tam, przecież pracowaliśmy nad tym już od 2002 r. Poza tym byliśmy pierwsi, a skoro jest już jeden standard, to dlaczego go nie wykorzystać? Wy w ogóle nie lubicie standardów, bo ODF używa MathML, SVG, a wy wszystko po swojemu, nawet kody języków macie inne niż cały świat... A co z prawami autorskimi i patentowymi? Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Fanatycy ODF: Eeee tam, przecież pracowaliśmy nad tym już od 2002 r. Poza tym byliśmy pierwsi, a skoro jest już jeden standard, to dlaczego go nie wykorzystać? Wy w ogóle nie lubicie standardów, bo ODF używa MathML, SVG, a wy wszystko po swojemu, nawet kody języków macie inne niż cały świat... A co z prawami autorskimi i patentowymi? Wielbiciele OOXML: Grrrrr!!! Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

OOXML kontra OpenDocument: wojna standardów Fanatycy ODF: Eeee tam, przecież pracowaliśmy nad tym już od 2002 r. Poza tym byliśmy pierwsi, a skoro jest już jeden standard, to dlaczego go nie wykorzystać? Wy w ogóle nie lubicie standardów, bo ODF używa MathML, SVG, a wy wszystko po swojemu, nawet kody języków macie inne niż cały świat... A co z prawami autorskimi i patentowymi? Wielbiciele OOXML: Grrrrr!!! Fanatycy ODF: Microsoft isn t the answer. Microsoft is the question, and the answer is NO. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 31

XLink Odnośniki HTML-owe: łączą dwa dokumenty: źródło i cel linku, źródłem linku jest zawsze element opisujący link (<A>, <IMG>). XLink rozszerzona koncepcja powiązań: Status: informacja o linkach zapisana w dowolnym elemencie: nieistotna nazwa elementu, istotne atrybuty z przestrzeni nazw XLink, więcej niż dwa końce linku (hiperlink relacja), możliwość reprezentacji linku poza wiązanymi zasobami. korzenie historyczne: HyTime, XLink 1.0 rekomendacja W3C, czerwiec 2001, XLink 1.1 wersja robocza (aktualizacja w 2008). Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 32

Terminologia Zasób (ang. resource) dowolna adresowalna jednostka informacji lub usługa (plik, program, wynik kwerendy). Dowiązanie (ang. link) wyrażona jawnie, przy pomocy elementu wiążącego (ang. linking element), relacja pomiędzy zasobami uczestniczącymi (ang. participate) w dowiązaniu. Przejście (ang. traversal) użycie pary zasobów (źródłowego starting i docelowego ending) połączonej dowiązaniem. Łuk (ang. arc) informacja o przejściu między zasobami oznaczonymi dwoma etykietami (w określonym kierunku): łuk wychodzący (ang. outbound) z zasobu lokalnego do zewnętrznego, łuk wchodzący (ang. inbound) z zewnętrznego do lokalnego, łuk niezależny (ang. third party) między zewnętrznymi. UWAGA: zasób jest traktowany jako zewnętrzny (ang. remote) zawsze, gdy jest adresowany za pomocą URI (nawet, gdy znajduje się w tym samym dokumencie czy elemencie linkującym co posługujący się nim link. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 33

Dowiązania XLink Link prosty (ang. simple link): to link wychodzący, wiąże dokładnie dwa zasoby: lokalny z zewnętrznym, zawiera dokładnie jeden łuk pomiędzy zasobami. Link rozszerzony (ang. extended link): wiąże dowolną liczbę zasobów lokalnych i zewnętrznych, łuki opisują sposoby przechodzenia pomiędzy zasobami, określa role zasobów uczestniczących w linku, określa role łuków. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 34

Link prosty przykład <artykuł xmlns:xlink="http://www.w3.org/1999/xlink"> <autor>diego A. Golombek</autor> <tytuł>pozytywny wpływ <sponsor xlink:type="simple" xlink:href="http://www.example.com/ shop.xml#viagra">viagry</sponsor> na neutralizowanie zespołu nagłej zmiany strefy czasowej u chomików</tytuł> </artykuł> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 35

Link rozszerzony przykład Przejście od każdego z rodziców do każdego dziecka: <rodzina xlink:type="extended" xmlns:xlink="http://www.w3.org/1999/xlink"> <osoba xlink:type="locator" xlink:href="hipcio.xml" xlink:label="rodzic" xlink:title="hipolit"/> <osoba xlink:type="locator" xlink:href="wiesia.xml" xlink:label="rodzic" xlink:title="wiesława"/> <osoba xlink:type="locator" xlink:href="roxy.xml" xlink:label="dziecko" xlink:title="roksana"/> <osoba xlink:type="locator" xlink:href="oli.xml" xlink:label="dziecko" xlink:title="oliwier"/> <osoba xlink:type="locator" xlink:href="nika.xml" xlink:label="dziecko" xlink:title="nicola"/> <link xlink:type="arc" xlink:from="rodzic" xlink:to="dziecko"/> </rodzina> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 36

Atrybuty w linkach rozszerzonych type href role arcrole title show actuate label from, to rola elementu w linku (simple, extended, locator, arc, resource, title, none) URI zasobu zewnętrznego abstrakcyjny identyfikator roli zasobu w powiązaniu (URI) j.w., ale dla pojedynczego łuku między zasobami etykieta tekstowa zasobu, łuku (opcjonalna) jak prezentować (new, replace, embed, other, none) kiedy aktywować (onload, onrequest, other, none) etykieta zasobu używana jako identyfikator (do użycia we from i to, nie muszą być unikalne) wskazanie (w łuku) na etykietę zasobu Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 37

Link prosty jako rozszerzony Link prosty: <link xlink:href="...">jam Łasica</link> Link rozszerzony: <link xlink:type="extended"> <resource xlink:type="resource" xlink:label="local">jam Łasica</resource> <locator xlink:type="locator" xlink:href="..." xlink:label="remote" xlink:role="..." xlink:title="..."/> <go xlink:type="arc" xlink:from="local" xlink:to="remote" xlink:arcrole="..." xlink:show="replace" xlink:actuate="onrequest"/> </link> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 38

Przyszłość XLink Zastosowania: Zasięg: organizowanie, kojarzenie zasobów, nawet gdy nie mamy prawa zapisu, dostarczanie wartości dodanej zbiorów linków. lokalny serwery linków operujące na bazie linków, Internet? Problemy: wizualizacja linków rozszerzonych, synchronizacja zasobów i linków (Internet). Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 39

DITA Darwin Information Typing Architecture Standard powstał w IBM (2001), obecnie opiekę nad nim przejęła organizacja OASIS (od 2005 r.) Główne pojęcia: informacja zgromadzona w tematach (ang. topics) porcjach informacji o danym zagadnieniu (tytuł, tekst, obrazki), dokumenty-mapy (ang. ditamaps) są uporządkowanym zbiorem odwołań do tematów (ang. topicrefs), tworzonym z uwzględnieniem wartości metadanych tematów, odwołania śródtekstowe (ang. conrefs) umożliwiają włączanie komponentów do treści tematów. http://www.ditaworld.com Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 40

DITA specjalizacja Specjalizacja: tematy mogą być hierarchicznie doszczegóławiane (w określonym, zdefiniowanym w specyfikacji formalizmie); sama specyfikacja wprowadza trzy zawężenia pierwotne : Efekt: zadanie (ang. task) procedura opisująca sposób wykonania danej czynności, złożona z listy kroków, pojęcie (ang. concept) wyjaśnienie procesów wymaganych do zrozumienia kroków zadania, materiał zależny (ang. reference). dokumenty specjalizowane pozostają dokumentami typu bazowego, wiążemy przetwarzanie typu zależnego z przetwarzaniem typu bazowego, zachowujemy możliwość rozszerzenia łańcucha przetwarzania o nowe elementy. Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 41

DITA przykład zadania <task id="maintaindatabase" xml:lang="pl"> <title>administracja bazą danych</title> <shortdesc>administracja bazą jest łatwa.</shortdesc> <taskbody> <steps-unordered> <step> <cmd>jeśli baza nie działa, zrestartuj ją.</cmd> </step> <step> <cmd>jeśli baza działa wolno, namów użytkowników, by używali jej oszczędnie.</cmd> </step> </steps-unordered> </taskbody> </task> Wykład 9: XPointer, XInclude i przegląd zastosowań XML-a XML i nowoczesne metody zarządzania treścią 42