Following is the schemaXml of a Rss WebPart. SchemaXml is essential to add a WebPart to a SharePoint WebPage. It contains the settings of a given WebPart. Following I have highlighted the FeedUrl property of this WebPart. This blog has been posted in conjunction with the blog, https://realmpksharepoint.wordpress.com/2014/04/10/add-a-new-webpart-to-a-sharepoint-site-using-client-object-model-c/
<webParts> <webPart xmlns="http://schemas.microsoft.com/WebPart/v3"> <metaData> <type name="Microsoft.SharePoint.Portal.WebControls.RSSAggregatorWebPart, Microsoft.SharePoint.Portal, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" /> <importErrorMessage>Cannot import this web part.</importErrorMessage> </metaData> <data> <properties> <property name="InitialAsyncDataFetch" type="bool">False</property> <property name="ChromeType" type="chrometype">Default</property> <property name="ListName" type="string">{B60CCD97-C15A-462E-82E7-9684FA71D9A9}</property> <property name="Height" type="string" /> <property name="CacheXslStorage" type="bool">True</property> <property name="Default" type="string" /> <property name="ParameterBindings" type="string"><ParameterBinding Name="RequestUrl" Location="WPProperty[FeedUrl]"/></property> <property name="AllowZoneChange" type="bool">True</property> <property name="AutoRefresh" type="bool">False</property> <property name="XmlDefinitionLink" type="string" /> <property name="DataFields" type="string" /> <property name="FeedLimit" type="int">5</property> <property name="Hidden" type="bool">False</property> <property name="NoDefaultStyle" type="string" null="true" /> <property name="XslLink" type="string" null="true" /> <property name="ViewFlag" type="string">0</property> <property name="CatalogIconImageUrl" type="string" /> <property name="FireInitialRow" type="bool">True</property> <property name="AutoRefreshInterval" type="int">60</property> <property name="AllowConnect" type="bool">True</property> <property name="FeedUrl" type="string">http://wxdata.weather.com/wxdata/weather/rss/local/INXX0300?cm_ven=LWO&cm_cat=rss</property> <property name="AllowClose" type="bool">True</property> <property name="ShowWithSampleData" type="bool">False</property> <property name="Xsl" type="string"><xsl:stylesheet xmlns:x="http://www.w3.org/2001/XMLSchema" version="1.0" exclude-result-prefixes="xsl ddwrt msxsl rssaggwrt" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:rssaggwrt="http://schemas.microsoft.com/WebParts/v3/rssagg/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:rssFeed="urn:schemas-microsoft-com:sharepoint:RSSAggregatorWebPart" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rss1="http://purl.org/rss/1.0/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:atom2="http://purl.org/atom/ns#"> <xsl:param name="rss_FeedLimit">5</xsl:param> <xsl:param name="rss_ExpandFeed">false</xsl:param> <xsl:param name="rss_LCID">1033</xsl:param> <xsl:param name="rss_WebPartID">RSS_Viewer_WebPart</xsl:param> <xsl:param name="rss_alignValue">left</xsl:param> <xsl:param name="rss_IsDesignMode">True</xsl:param> <xsl:template match="rss"> <xsl:call-template name="RSSMainTemplate"/> </xsl:template> <xsl:template match="rdf:RDF"> <xsl:call-template name="RDFMainTemplate"/> </xsl:template> <xsl:template match="atom:feed"> <xsl:call-template name="ATOMMainTemplate"/> </xsl:template> <xsl:template match="atom2:feed"> <xsl:call-template name="ATOM2MainTemplate"/> </xsl:template> <xsl:template name="RSSMainTemplate" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:variable name="Rows" select="channel/item"/> <xsl:variable name="RowCount" select="count($Rows)"/> <div class="slm-layout-main" > <div class="groupheader item medium"> <a href="{ddwrt:EnsureAllowedProtocol(string(channel/link))}"> <xsl:value-of select="channel/title"/> </a> </div> <xsl:call-template name="RSSMainTemplate.body"> <xsl:with-param name="Rows" select="$Rows"/> <xsl:with-param name="RowCount" select="count($Rows)"/> </xsl:call-template> </div> </xsl:template> <xsl:template name="RSSMainTemplate.body" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="Rows"/> <xsl:param name="RowCount"/> <xsl:for-each select="$Rows"> <xsl:variable name="CurPosition" select="position()" /> <xsl:variable name="RssFeedLink" select="$rss_WebPartID" /> <xsl:variable name="CurrentElement" select="concat($RssFeedLink,$CurPosition)" /> <xsl:if test="($CurPosition &lt;= $rss_FeedLimit)"> <div class="item link-item" > <a href="{concat(&quot;javascript:ToggleItemDescription('&quot;,$CurrentElement,&quot;')&quot;)}" > <xsl:value-of select="title"/> </a> <xsl:if test="$rss_ExpandFeed = true()"> <xsl:call-template name="RSSMainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:block;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> <xsl:if test="$rss_ExpandFeed = false()"> <xsl:call-template name="RSSMainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:none;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> </div> </xsl:if> </xsl:for-each> </xsl:template> <xsl:template name="RSSMainTemplate.description" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="DescriptionStyle"/> <xsl:param name="CurrentElement"/> <div id="{$CurrentElement}" class="description" align="{$rss_alignValue}" style="{$DescriptionStyle} text-align:{$rss_alignValue};"> <xsl:choose> <!-- some RSS2.0 contain pubDate tag, some others dc:date --> <xsl:when test="string-length(pubDate) &gt; 0"> <xsl:variable name="pubDateLength" select="string-length(pubDate) - 3" /> <xsl:value-of select="ddwrt:FormatDate(substring(pubDate,0,$pubDateLength),number($rss_LCID),3)"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="ddwrt:FormatDate(string(dc:date),number($rss_LCID),3)"/> </xsl:otherwise> </xsl:choose> <xsl:if test="string-length(description) &gt; 0"> <xsl:variable name="SafeHtml"> <xsl:call-template name="GetSafeHtml"> <xsl:with-param name="Html" select="description"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/> </xsl:if> <div class="description"> <a href="{ddwrt:EnsureAllowedProtocol(string(link))}">More...</a> </div> </div> </xsl:template> <xsl:template name="RDFMainTemplate" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:variable name="Rows" select="rss1:item"/> <xsl:variable name="RowCount" select="count($Rows)"/> <div class="slm-layout-main" > <div class="groupheader item medium"> <a href="{ddwrt:EnsureAllowedProtocol(string(rss1:channel/rss1:link))}"> <xsl:value-of select="rss1:channel/rss1:title"/> </a> </div> <xsl:call-template name="RDFMainTemplate.body"> <xsl:with-param name="Rows" select="$Rows"/> <xsl:with-param name="RowCount" select="count($Rows)"/> </xsl:call-template> </div> </xsl:template> <xsl:template name="RDFMainTemplate.body" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="Rows"/> <xsl:param name="RowCount"/> <xsl:for-each select="$Rows"> <xsl:variable name="CurPosition" select="position()" /> <xsl:variable name="RssFeedLink" select="$rss_WebPartID" /> <xsl:variable name="CurrentElement" select="concat($RssFeedLink,$CurPosition)" /> <xsl:if test="($CurPosition &lt;= $rss_FeedLimit)"> <div class="item link-item" > <a href="{concat(&quot;javascript:ToggleItemDescription('&quot;,$CurrentElement,&quot;')&quot;)}" > <xsl:value-of select="rss1:title"/> </a> <xsl:if test="$rss_ExpandFeed = true()"> <xsl:call-template name="RDFMainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:block;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> <xsl:if test="$rss_ExpandFeed = false()"> <xsl:call-template name="RDFMainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:none;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> </div> </xsl:if> </xsl:for-each> </xsl:template> <xsl:template name="RDFMainTemplate.description" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="DescriptionStyle"/> <xsl:param name="CurrentElement"/> <div id="{$CurrentElement}" class="description" align="{$rss_alignValue}" style="{$DescriptionStyle} text-align:{$rss_alignValue};"> <xsl:value-of select="ddwrt:FormatDate(string(dc:date),number($rss_LCID),3)"/> <xsl:if test="string-length(rss1:description) &gt; 0"> <xsl:variable name="SafeHtml"> <xsl:call-template name="GetSafeHtml"> <xsl:with-param name="Html" select="rss1:description"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/> </xsl:if> <div class="description"> <a href="{ddwrt:EnsureAllowedProtocol(string(rss1:link))}">More...</a> </div> </div> </xsl:template> <xsl:template name="ATOMMainTemplate" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:variable name="Rows" select="atom:entry"/> <xsl:variable name="RowCount" select="count($Rows)"/> <div class="slm-layout-main" > <div class="groupheader item medium"> <a href="{ddwrt:EnsureAllowedProtocol(string(atom:link/@href))}"> <xsl:value-of select="atom:title"/> </a> </div> <xsl:call-template name="ATOMMainTemplate.body"> <xsl:with-param name="Rows" select="$Rows"/> <xsl:with-param name="RowCount" select="count($Rows)"/> </xsl:call-template> </div> </xsl:template> <xsl:template name="ATOMMainTemplate.body" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="Rows"/> <xsl:param name="RowCount"/> <xsl:for-each select="$Rows"> <xsl:variable name="CurPosition" select="position()" /> <xsl:variable name="RssFeedLink" select="$rss_WebPartID" /> <xsl:variable name="CurrentElement" select="concat($RssFeedLink,$CurPosition)" /> <xsl:if test="($CurPosition &lt;= $rss_FeedLimit)"> <div class="item link-item" > <a href="{concat(&quot;javascript:ToggleItemDescription('&quot;,$CurrentElement,&quot;')&quot;)}" > <xsl:value-of select="atom:title"/> </a> <xsl:if test="$rss_ExpandFeed = true()"> <xsl:call-template name="ATOMMainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:block;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> <xsl:if test="$rss_ExpandFeed = false()"> <xsl:call-template name="ATOMMainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:none;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> </div> </xsl:if> </xsl:for-each> </xsl:template> <xsl:template name="ATOMMainTemplate.description" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="DescriptionStyle"/> <xsl:param name="CurrentElement"/> <div id="{$CurrentElement}" class="description" align="{$rss_alignValue}" style="{$DescriptionStyle} text-align:{$rss_alignValue};"> <xsl:value-of select="ddwrt:FormatDate(string(atom:updated),number($rss_LCID),3)"/> <xsl:choose> <xsl:when test="string-length(atom:summary) &gt; 0"> <xsl:variable name="SafeHtml"> <xsl:call-template name="GetSafeHtml"> <xsl:with-param name="Html" select="atom:summary"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/> </xsl:when> <xsl:when test="string-length(atom:content) &gt; 0"> <xsl:variable name="SafeHtml"> <xsl:call-template name="GetSafeHtml"> <xsl:with-param name="Html" select="atom:content"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/> </xsl:when> </xsl:choose> <div class="description"> <a href="{ddwrt:EnsureAllowedProtocol(string(atom:link/@href))}">More...</a> </div> </div> </xsl:template> <xsl:template name="ATOM2MainTemplate" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:variable name="Rows" select="atom2:entry"/> <xsl:variable name="RowCount" select="count($Rows)"/> <div class="slm-layout-main" > <div class="groupheader item medium"> <a href="{ddwrt:EnsureAllowedProtocol(string(atom2:link/@href))}"> <xsl:value-of select="atom2:title"/> </a> </div> <xsl:call-template name="ATOM2MainTemplate.body"> <xsl:with-param name="Rows" select="$Rows"/> <xsl:with-param name="RowCount" select="count($Rows)"/> </xsl:call-template> </div> </xsl:template> <xsl:template name="ATOM2MainTemplate.body" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="Rows"/> <xsl:param name="RowCount"/> <xsl:for-each select="$Rows"> <xsl:variable name="CurPosition" select="position()" /> <xsl:variable name="RssFeedLink" select="$rss_WebPartID" /> <xsl:variable name="CurrentElement" select="concat($RssFeedLink,$CurPosition)" /> <xsl:if test="($CurPosition &lt;= $rss_FeedLimit)"> <div class="item link-item" > <a href="{concat(&quot;javascript:ToggleItemDescription('&quot;,$CurrentElement,&quot;')&quot;)}" > <xsl:value-of select="atom2:title"/> </a> <xsl:if test="$rss_ExpandFeed = true()"> <xsl:call-template name="ATOM2MainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:block;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> <xsl:if test="$rss_ExpandFeed = false()"> <xsl:call-template name="ATOM2MainTemplate.description"> <xsl:with-param name="DescriptionStyle" select="string('display:none;')"/> <xsl:with-param name="CurrentElement" select="$CurrentElement"/> </xsl:call-template> </xsl:if> </div> </xsl:if> </xsl:for-each> </xsl:template> <xsl:template name="ATOM2MainTemplate.description" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"> <xsl:param name="DescriptionStyle"/> <xsl:param name="CurrentElement"/> <div id="{$CurrentElement}" class="description" align="{$rss_alignValue}" style="{$DescriptionStyle} text-align:{$rss_alignValue};"> <xsl:value-of select="ddwrt:FormatDate(string(atom2:updated),number($rss_LCID),3)"/> <xsl:choose> <xsl:when test="string-length(atom2:summary) &gt; 0"> <xsl:variable name="SafeHtml"> <xsl:call-template name="GetSafeHtml"> <xsl:with-param name="Html" select="atom2:summary"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/> </xsl:when> <xsl:when test="string-length(atom2:content) &gt; 0"> <xsl:variable name="SafeHtml"> <xsl:call-template name="GetSafeHtml"> <xsl:with-param name="Html" select="atom2:content"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/> </xsl:when> </xsl:choose> <div class="description"> <a href="{ddwrt:EnsureAllowedProtocol(string(atom2:link/@href))}">More...</a> </div> </div> </xsl:template> <xsl:template name="GetSafeHtml"> <xsl:param name="Html"/> <xsl:choose> <xsl:when test="$rss_IsDesignMode = 'True'"> <xsl:value-of select="$Html"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="rssaggwrt:MakeSafe($Html)"/> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet> </property> <property name="EnableOriginalValue" type="bool">False</property> <property name="ExpandFeed" type="bool">False</property> <property name="ListUrl" type="string" null="true" /> <property name="DataSourceID" type="string" /> <property name="CacheXslTimeOut" type="int">600</property> <property name="ManualRefresh" type="bool">False</property> <property name="ViewFlags" type="Microsoft.SharePoint.SPViewFlags, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">None</property> <property name="ChromeState" type="chromestate">Normal</property> <property name="AllowHide" type="bool">True</property> <property name="ListDisplayName" type="string" null="true" /> <property name="SampleData" type="string" null="true" /> <property name="AsyncRefresh" type="bool">False</property> <property name="Direction" type="direction">NotSet</property> <property name="Title" type="string">RSS Viewer</property> <property name="ListId" type="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">b60ccd97-c15a-462e-82e7-9684fa71d9a9</property> <property name="Description" type="string">Displays an RSS feed.</property> <property name="AllowMinimize" type="bool">True</property> <property name="TitleUrl" type="string" /> <property name="DataSourcesString" type="string"> <%@ Register TagPrefix="WebControls" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register TagPrefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <WebControls:XmlUrlDataSource runat="server" AuthType="None" HttpMethod="GET"> <DataFileParameters> <WebPartPages:DataFormParameter Name="RequestUrl" ParameterKey="RequestUrl" PropertyName="ParameterValues"/> </DataFileParameters> </WebControls:XmlUrlDataSource></property> <property name="DisplayName" type="string" /> <property name="PageType" type="Microsoft.SharePoint.PAGETYPE, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">PAGE_NORMALVIEW</property> <property name="Width" type="string" /> <property name="AllowEdit" type="bool">True</property> <property name="ExportMode" type="exportmode">All</property> <property name="CacheRefreshTimeInMins" type="int">120</property> <property name="PageSize" type="int">-1</property> <property name="ViewContentTypeId" type="string" /> <property name="HelpUrl" type="string" /> <property name="XmlDefinition" type="string" /> <property name="UseSQLDataSourcePaging" type="bool">True</property> <property name="TitleIconImageUrl" type="string" /> <property name="MissingAssembly" type="string">Cannot import this web part.</property> <property name="HelpMode" type="helpmode">Modeless</property> </properties> </data> </webPart> </webParts>\