public override void WriteStartElement(string prefix, string localName) { if (prefix.Length == 0) { WriteNode(XmlBinaryNodeType.ShortElement); WriteName(localName); } else { char ch = prefix[0]; if (prefix.Length == 1 && ch >= 'a' && ch <= 'z') { WritePrefixNode(XmlBinaryNodeType.PrefixElementA, ch - 'a'); WriteName(localName); } else { WriteNode(XmlBinaryNodeType.Element); WriteName(prefix); WriteName(localName); } } }