| |
} } LookupNamespacePrefix(DOMString namespaceURI DOMString, ElementoriginalElement){ wenn (Element hat ein namespace- und namespace-==namespaceURI des Elements und Element hat ein Präfix und originalElement.lookupNamespaceURI(Element's-Präfix) ==namespaceURI) { Rückkehr (Präfix des Elements); } wenn (Element hat Attribute) { für (alle namespace-Erklärungattribute des DOM-Niveaus 2 gültigen lokalen des Elements) { wenn (Präfix== "xmlns" Attrs und Wert==namespaceURI Attrs und originalElement.lookupNamespaceURI(Attr's-localname) ==namespaceURI) { Rückkehr (localname Attrs); } } } wenn (Nullpunkt hat ein Vorfahrenelement) // EntityReferences können übersprungen werden müssen, um an es zu gelangen { Rückholancestor.lookupNamespacePrefix(namespaceURI, originalElement); } Rückholnull; } Namespace-Nachschlagen Der Rückstellung B.3 Das folgende beschreibt im Pseudo-Code, den der Algorithmus im isDefaultNamespace verwendete Methode von der Nullpunkt Schnittstelle [ p.56 ]. Dieses ignoriert Methoden Nullpunkte des DOM-Niveaus 1. Boolesches namespaceURI isDefaultNamespace(inDOMString) { schalten Sie (nodeType) { Fall ELEMENT_NODE: wenn (Element hat kein Präfix) { Rückkehr (namespace-==namespaceURI des Elements); } wenn (Element hat Attribute und es gibt ein gültiges DOM-Niveau 2 fallen Sie namespace-Erklärung, d.h. localName== "xmlns" Attrs) zurück { Rückkehr (Wert==namespaceURI Attrs); } wenn (Element hat ein Vorfahrenelement) // EntityReferences können übersprungen werden müssen, um an es zu gelangen { Rückkehr ancestorElement.isDefaultNamespace(namespaceURI); } sonst { 130 Namespace-Nachschlagen Der Rückstellung B.3 |  |
|
| |
|
|