Obiektowy model dokumentu

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
Hierarchia obiektów w przykładowym HTML DOM

Obiektowy model dokumentu (ang. Document Object Model, DOM) – sposób reprezentacji złożonych dokumentów XML i HTML w postaci modelu obiektowego. Model ten jest niezależny od platformy i języka programowania.

World Wide Web Consortium, w skrócie W3C, to organizacja, która zajmuje się ustanawianiem standardów pisania i przesyłu stron WWW. Została założona 1 października 1994 roku przez Tima Berners-Lee, twórcę WWW oraz autora pierwszej przeglądarki internetowej i serwera WWW.Netscape Communications Corporation (poprzednio pod firmą Mosaic Communications Corporation, MCC) – przedsiębiorstwo tworzące oprogramowanie, założone przez Marca Andreessena i Jamesa H. Clarka w kwietniu 1994 roku w celu wydania własnej wersji przeglądarki internetowej opartej na innej przeglądarce NCSA Mosaic znanej od tego czasu pod nazwą Netscape Navigator lub także pod nazwą kodową Mozilla. Przedsiębiorstwo zostało wykupione przez korporację AOL w roku 1998 i przestało istnieć 15 lipca 2003. Różne znaki towarowe związane z nazwą Netscape pozostają jednak w dalszym ciągu w użyciu.

Standard W3C DOM definiuje zespół klas i interfejsów, pozwalających na dostęp do struktury dokumentów oraz jej modyfikację poprzez tworzenie, usuwanie i modyfikację tzw. "węzłów" (ang. nodes).

Dla większości języków programowania istnieją biblioteki obsługujące DOM dla plików XML. Najbardziej zaawansowane z nich to Apache Xerces ([1]) i MS XML. Standard W3C definiuje interfejsy DOM tylko dla języków JavaScript i Java.

Standaryzacja[ | edytuj kod]

Pierwotnie nie istniał standardowy DOM. Twórcy najpopularniejszych przeglądarek internetowych (Netscape i Microsoft) tworzyli własne niezgodne ze sobą modele o interfejsie programistycznym opartym na kolekcjach odpowiednio: document.layers i document.all.

Biblioteka Narodowa Izraela (hebr. הספרייה הלאומית; dawniej: Żydowska Biblioteka Narodowa i Uniwersytecka, hebr. בית הספרים הלאומי והאוניברסיטאי) – izraelska biblioteka narodowa w Jerozolimie.Apache Xerces to rodzina pakietów oprogramowania przeznaczonych do analizy składniowej i manipulacji dokumentami XML, stanowiąca część projektu Apache XML project. Xerces umożliwia zarówno analizę jak i tworzenie dokumentów XML.

Organizacja W3C przygotowała ujednolicony standard obiektowego modelu dokumentu, wewnętrznie podobny do wersji Microsoftu, choć o innym interfejsie programistycznym – dostęp do elementów dokumentu możliwy jest tu poprzez wywołanie odpowiedniej metody – np. document.getElementById.

Library of Congress Control Number (LCCN) – numer nadawany elementom skatalogowanym przez Bibliotekę Kongresu wykorzystywany przez amerykańskie biblioteki do wyszukiwania rekordów bibliograficznych w bazach danych i zamawiania kart katalogowych w Bibliotece Kongresu lub u innych komercyjnych dostawców. JavaScript, JS – skryptowy język programowania, stworzony przez firmę Netscape, najczęściej stosowany na stronach internetowych. Pod koniec lat 90. XX wieku organizacja ECMA wydała na podstawie JavaScriptu standard języka skryptowego o nazwie ECMAScript. Głównym autorem JavaScriptu jest Brendan Eich.

Poziomy DOM[ | edytuj kod]

WHATWG DOM

Istnieje kilka tzw. poziomów DOM:

  • nieoficjalny „poziom zerowy” (DOM Level 0) – model DOM z przeglądarki Netscape Navigator 3.0, skopiowany przez Microsoft i zaimplementowany we wszystkich przeglądarkach internetowych, mimo że nie stanowi oficjalnego standardu W3C. Zapewnia prosty dostęp głównie do elementów formularzy i obrazków.
  • poziom pierwszy (DOM Level 1) – dostępny z poziomu JavaScriptu w przeglądarkach internetowych oraz w wielu innych językach programowania. Poziom ten odpowiada za dostęp do treści dokumentu poprzez tworzenie, modyfikowanie i dołączanie węzłów i atrybutów.
  • poziom drugi (DOM Level 2) – dostępny w większości współczesnych przeglądarek internetowych oraz w wielu językach programowania. Poziom ten odpowiada m.in. za obsługę zdarzeń i przestrzeni nazw.
  • poziom trzeci (DOM Level 3) – składa się na niego sześć specyfikacji:
  • DOM Level 3 Core
  • DOM Level 3 Load and Save
  • DOM Level 3 XPath
  • DOM Level 3 Views and Formatting
  • DOM Level 3 Requirements
  • DOM Level 3 Validation
  • Linki zewnętrzne[ | edytuj kod]

  • W3C DOM
  • W programowaniu obiektowym interfejs jest definicją abstrakcyjnego typu posiadającego jedynie operacje, a nie dane. Kiedy w konkretnej klasie zdefiniowane są wszystkie metody interfejsu mówimy, że klasa implementuje dany interfejs. W programie mogą być tworzone zmienne typu referencja do interfejsu, nie można natomiast tworzyć obiektów tego typu. Referencja może wskazywać na obiekt dowolnej klasy implementującej dany interfejs. Interfejs określa udostępniane operacje, nie zawiera natomiast ich implementacji i danych. Z tego powodu klasy mogą implementować wiele interfejsów, bez problemów wynikających z wielokrotnego dziedziczenia. Wszystkie metody w interfejsie z reguły muszą być publiczne.Netscape Navigator, później Netscape Communicator, następnie Netscape i znowu Netscape Navigator to przeglądarka internetowa wyprodukowana przez amerykańskie przedsiębiorstwo Netscape Communications Corporation. Pierwsza wersja programu pojawiła się w roku 1994, ostatnia, 9. wersja programu ukazała się w 2007. 28 grudnia 2007 AOL (właściciel marki) ogłosił wstrzymanie prac nad rozwojem aplikacji internetowych (przeglądarka i klient poczty elektronicznej oraz grup dyskusyjnych), pierwotnie poprawki bezpieczeństwa miały być wypuszczane do 2 lutego 2008 r., jednak zostały przedłużone do 1 marca 2008 r.




    Warto wiedzieć że... beta

    W programowaniu obiektowym klasa jest częściową lub całkowitą definicją dla obiektów. Definicja obejmuje dopuszczalny stan obiektów oraz ich zachowania. Obiekt, który został stworzony na podstawie danej klasy nazywany jest jej instancją. Klasy mogą być typami języka programowania - przykładowo, instancja klasy Owoc będzie mieć typ Owoc. Klasy posiadają zarówno interfejs, jak i strukturę. Interfejs opisuje, jak komunikować się z jej instancjami za pośrednictwem metod, zaś struktura definiuje sposób mapowania stanu obiektu na elementarne atrybuty.
    Przestrzeń nazw (ang. namespace) – abstrakcyjne uniwersum, którego elementami mogą być nazwy, terminy techniczne lub słowa. W obrębie dowolnej przestrzeni nazw każda nazwa musi być niepowtarzalna. Przestrzeń nazw jest kontekstem, w którym słowo może być jednoznacznie przypisane do reprezentowanego przez nie pojęcia ze świata rzeczywistego.
    Kontener (lub inaczej pojemnik, ang. container, collection) - struktura danych, której zadaniem jest przechowywanie w zorganizowany sposób zbioru danych (obiektów). Kontener zapewnia narzędzia dostępu, w tym dodawanie, usuwanie i wyszukiwanie danej (obiektu) w kontenerze. W zależności od przyjętej organizacji, poszczególne kontenery różnią się wydajnością poszczególnych operacji.
    Język programowania – zbiór zasad określających, kiedy ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje.
    Przeglądarka internetowa lub przeglądarka WWW (ang. web browser) – program komputerowy służący do pobierania i wyświetlania stron internetowych udostępnianych przez serwery WWW, a także odtwarzania plików multimedialnych, często przy użyciu dodatkowych rozszerzeń, zwanych wtyczkami.
    Metoda – w programowaniu obiektowym podprogram składowy klasy, którego zadaniem jest działanie na rzecz określonych elementów danej klasy lub klas z nią spokrewnionych (zob. też dziedziczenie).
    Interfejs programowania aplikacji, interfejs programistyczny aplikacji (ang. application programming interface, API) – sposób, rozumiany jako ściśle określony zestaw reguł i ich opisów, w jaki programy komputerowe komunikują się między sobą.

    Reklama