DOMImplementation#

Wstęp#

Interfejs DOMImplementation stanowi definicję Web IDL dla obiektów tworzonych i kojarzonych automatycznie z każdym rodzajem dokumentu. Obiekty typu DOMImplementation są potocznie nazywane implementacjami DOM #.

Zadaniem interfejsu DOMImplementation było wyodrębnienie tych metod, które w żadne sposób nie zależą od typu danego dokumentu. Na przestrzeni lat pojawiło się jedynie pięć takich metod, z czego aktualna specyfikacja DOM4 pozostawia tylko cztery z nich, niemniej jednak wydaje się, że zdefiniowanie dla nich osobnego interfejsu po raz kolejny okazało się nietrafionym pomysłem. Wystarczyło ulokować je bezpośrednio w ogólnym interfejsie Document, zapewniając tym samym swobodny do nich dostęp z dowolnego dokumentu, bez żadnego obiektu czy innego polecenia pośredniczącego.

Interfejs DOMImplementation nie dziedziczy z żadnego innego interfejsu w ogólnym ujęciu DOM, chociaż w środowisku JS obiekty implementujące ten interfejs będą dziedziczyły z prototypu najwyższego rzędu. Zachowanie takie jest czymś normalnym w przypadku języka ECMAScript.

Implementację DOM można uzyskać za pomocą właściwości:

Metody DOMImplementation#

NazwaOpis
DOMImplementation.createDocument()Tworzy nowy historyczny dokument XML z określoną przestrzenią nazw i nazwą kwalifikowaną dla jego elementu dokumentowego oraz deklaracją typu dokumentu.
DOMImplementation.createDocumentType()Tworzy nową deklarację typu dokumentu z określoną nazwą, identyfikatorem publicznym oraz identyfikatorem systemowym.
DOMImplementation.createHTMLDocument()Tworzy nowy dokument HTML z określonym tytułem i minimalną podstawową zawartością.
DOMImplementation.hasFeature()Zwraca wartość true.

Składnia Web IDL#

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
interface DOMImplementation # {
	[NewObject] DocumentType createDocumentType(DOMString qualifiedName, DOMString publicId, DOMString systemId);
	[NewObject] XMLDocument createDocument(DOMString? namespace, [TreatNullAs=EmptyString] DOMString qualifiedName, optional DocumentType? doctype = null);
	[NewObject] Document createHTMLDocument(optional DOMString title);

	boolean hasFeature(); // useless; always returns true
};

Specyfikacje i inne materiały#

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

DOMImplementation (H1) Wstęp (H2) Metody DOMImplementation (H3) Składnia Web IDL (H3) Specyfikacje i inne materiały (H3)