/// <summary> /// /// </summary> /// <param name="writer"></param> /// <param name="version"></param> protected override void WriteElementExtensions(XmlWriter writer, string version) { // There is no need to provide prefix when writing Element. // As long as the namespaces defined in OpdsFeed properly. // The prefix will be added automatically. if (!String.IsNullOrWhiteSpace(Language)) { writer.WriteElementString("language", OpdsNamespaces.DublinCore.Value, Language); } if (!String.IsNullOrWhiteSpace(Issued)) { writer.WriteElementString("issued", OpdsNamespaces.DublinCore.Value, Issued); } if (!String.IsNullOrWhiteSpace(ISBN)) { writer.WriteStartElement("identifier", OpdsNamespaces.DublinCore.Value); if (ISBN.StartsWith("urn:")) { writer.WriteAttributeString("type", OpdsNamespaces.Xsi.Value, "URI"); } writer.WriteValue(ISBN); writer.WriteEndElement(); } if (!String.IsNullOrWhiteSpace(Publisher)) { writer.WriteElementString("publisher", OpdsNamespaces.DublinCore.Value, Publisher); } if (Relevance >= 0) { writer.WriteElementString("score", OpdsNamespaces.Relevance.Value, Convert.ToString(Relevance, CultureInfo.InvariantCulture)); } if (!String.IsNullOrWhiteSpace(Extent)) { writer.WriteElementString("extent", OpdsNamespaces.DublinCore.Value, Extent); } if (!String.IsNullOrWhiteSpace(Source)) { writer.WriteElementString("source", OpdsNamespaces.DublinCore.Value, Source); } base.WriteElementExtensions(writer, version); }