void MarkupAccumulator::appendOpenTag(StringBuilder& out, Element* element, Namespaces* namespaces) { out.append('<'); out.append(element->nodeNamePreservingCase()); if (!element->document()->isHTMLDocument() && namespaces && shouldAddNamespaceElement(element)) appendNamespace(out, element->prefix(), element->namespaceURI(), *namespaces); }
void MarkupAccumulator::appendOpenTag(StringBuilder& result, const Element& element, Namespaces* namespaces) { result.append('<'); result.append(nodeNamePreservingCase(element)); if (!serializeAsHTMLDocument(element) && namespaces && shouldAddNamespaceElement(element, *namespaces)) appendNamespace(result, element.prefix(), element.namespaceURI(), *namespaces); }
void MarkupFormatter::appendOpenTag(StringBuilder& result, const Element& element, Namespaces* namespaces) { result.append('<'); result.append(element.tagQName().toString()); if (!serializeAsHTMLDocument(element) && namespaces && shouldAddNamespaceElement(element, *namespaces)) appendNamespace(result, element.prefix(), element.namespaceURI(), *namespaces); }
void MarkupAccumulator::appendOpenTag(StringBuilder& result, const Element& element, Namespaces* namespaces) { result.append('<'); if (inXMLFragmentSerialization() && namespaces && element.prefix().isEmpty()) { // According to http://www.w3.org/TR/DOM-Level-3-Core/namespaces-algorithms.html#normalizeDocumentAlgo we now should create // a default namespace declaration to make this namespace well-formed. However, http://www.w3.org/TR/xml-names11/#xmlReserved states // "The prefix xml MUST NOT be declared as the default namespace.", so use the xml prefix explicitly. if (element.namespaceURI() == XMLNames::xmlNamespaceURI) { result.append(xmlAtom); result.append(':'); } } result.append(element.nodeNamePreservingCase()); if ((inXMLFragmentSerialization() || !element.document().isHTMLDocument()) && namespaces && shouldAddNamespaceElement(element)) appendNamespace(result, element.prefix(), element.namespaceURI(), *namespaces, inXMLFragmentSerialization()); }