Ogólne#

Collections#

W tym miejscu umieszczam powtarzające się specyficzne pojęcia i algorytmy w dziale COLLECTIONS, czyli mogą mieć one zastosowanie dla wszystkich interfejsów z tego działu.

Pojęcia#

collection

live

static

Kolekcja # (collection) to obiekt, który reprezentuje listę węzłów z drzewa węzłów. Kolekcja może być aktualna # (live) lub statyczna # (static). Jeśli nie oznaczono inaczej, to kolekcja zawsze jest aktualna (szczegóły).

Właściwości i metody w obiektach reprezentujących aktualne kolekcje muszą operować na bieżących bazowych danych (underlying data), a nie na migawce tych danych.

filter

root

W chwili tworzenia kolekcji zostaje ona skojarzona z filtrem # (filter) oraz korzeniem # (root).

represents

Następnie kolekcja reprezentuje # (represents) widok poddrzewa zakorzenionego w skojarzonym korzeniu, zawierającego tylko te węzły, które pasują do skojarzonego filtra. Widok ten jest liniowy (podobnie zresztą jak w przypadku iteratora węzłowego). Jeśli nie sprecyzowano żadnych specyficznych wymagań to węzły w kolekcji muszą być posortowane zgodnie z porządkiem drzewa (szczegóły).

supported property indices

Obsługiwane indeksy właściwości # (supported property indices) w obiekcie kolekcji są liczbami z przedziału od 0 do liczby węzłów z reprezentacji kolekcji minus jeden. Jeśli nie będzie takich elementów, to indeksy właściwości nie są obsługiwane.

supported property names

Obsługiwane nazwy właściwości # (supported property names) w obiekcie kolekcji, wszystkie niewyliczalne, są wartościami z listy zwracanej według następujących kroków:

  1. Niech result będzie pustą listą.
  2. Dla każdego (for each) elementu element z widoku poddrzewa reprezentowanego przez kolekcję, zgodnie z porządkiem drzewa, wykonaj poniższe podkroki:

    1. Jeśli element ma unikatowy identyfikator, który nie znajduje się w result, to dodaj unikatowy identyfikator posiadany przez element do result.
    2. Jeśli element znajduje się w przestrzeni nazw HTML i ma swój atrybut name, którego wartością nie jest pusty łańcuch znakowy i nie znajduje się ona już w result, to dodaj wartość tego atrybut name posiadanego przez element do result.
  3. Zwróć result.
Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

Ogólne (H1) Collections (H2) Pojęcia (H3) collection (H4) live (H4) static (H4) filter (H4) root (H4) represents (H4) supported property indices (H4) supported property names (H4)