Zasada wykorzystywana jest w szablonie (template
). Dzieci rule
wykorzystywane są do deklarowania warunków spełnienia zasady i generowania zawartości. Kiedy zawartość ma być wyświetlona, budowniczy szablonu (template builder) skanuje źródło danych RDF szukając wierzchołków które spełniają zasadę. Kiedy zasada jest spełniona, odpowiadająca jej zawartość jest generowana.
Zasada zawiera dwie lub więcej elementów-dzieci. Element conditions
używany jest do określenia warunków, na których zasoby mogą spełniać zasadę. Zasoby spełniające zasadę używane są do generowania zawartości. Zasoby niespełniające tych zasad nie posiadają żadnej zawartości dla nich stworzonej. Element action
określ zawartości generowaną. Element bindings
jest opcjonalny i może określać dodatkowe zmienne wiązania, które mają być zastosowane.
Wszystkie troje dzieci mogą stosować zmienne w miejscu wartości atrybutów. Zmienne zapisuje jako znak zapytania i nazwa. Dla spełnionej zasady, każda zmienna stanie się referencją do wierzchołka zawartości RDF. Jeśli ta sama zmienna pojawi się kilkakrotnie, musi ona posiadać identyczną wartość za każdym razem.
Zasada może używać uproszczonej składni do porównania, które obejmuje wstawianie dodatkowych atrybutów do elementu rule
. Zasada spełni porównanie, jeśli dodany atrybut spełnia porównanie do zawartości RDF. Podczas porównania, atrybuty id
, property
oraz instanceOf
są ignorowane.
Każdy generowany element będzie dawał automatycznie wartość id. Wartość id będzie przesyłana do źródła id w bazie źródłowej. Możemy użyć to id w skryptach do badania źródła.
Dodatkowe informacje są dostępne w kursie XUL.
- Atrybuty
- iscontainer, isempty, parent, parsetype
Przykłady
(potrzebny przykład)
Atrybuty
-
iscontainer
- Typ: boolean
- Indicates whether rules match based on containment. If not specified, the rule may match regardless of whether a node is a container or not.
true
: The rule will only match nodes that are marked as containers. This would apply to nodes that represent folders.false
: The rule will only match nodes that are not marked as containers.
-
isempty
- Typ: boolean
- Indicates whether rules match based on emptyness. If not specified, the rule may match regardless of whether a node has children or not.
true
: The rule will only match nodes that contain no child elements.false
: The rule will only match nodes that contain one or more child elements.
-
parent
- Type: element tag name
- If set, the rule will only match the corresponding tag. This may be used to have separate rules for leaf and container nodes with different tags.
-
parsetype
- Type: string
-
If this attribute is set to
Integer
, the rule will only match RDF nodes with a parse type of Integer.
Własności
Dziedziczy z elementu XUL |
Metody
Podobne
TBD