Discovering and Downloading Manifest Files

Discovering and Downloading Manifest Files

Manifest files are discovered and downloaded in exactly the same way that RSD files are. Beginning from the blog homepage URL, writer first looks for a file named “wlwmanifest.xml” within the blog’s root directory. For example:

  • Blog URL:
  • Manifest URL:

If this probe is not successful then Writer downloads the blog homepage contents and looks within the <head> for a <link> tag which points to a manifest. For example (RSD link tag also included to illustrate the similarity in method):

    <title>Blog homepage</title>
    <link rel="EditURI" type="application/rsd+xml" 
        href="stuff/rsd.xml" />
    <link rel="wlwmanifest" type="application/wlwmanifest+xml" 
        href="stuff/wlwmanifest.xml" />

After successfully discovering a manifest, its URL is cached so that subsequent retrievals do not require discovery (however if the manifest URL is not available Writer will automatically attempt to re-discover the URL).

Writer attempts to discover and download a manifest file at the following times:

  • When running the Add Blog Account Wizard
  • When running the Update Account Configuration Wizard
  • When executing the Update Blog Style command
  • During Auto-Update (described below)

After discovery and download, the manifest file is read and its contents are used to update Writer’s configuration (registry settings, template files, etc).

In addition to using manifest files during blog configuration, Writer can also download a blog’s manifest each time the blog is activated within Writer. Auto-update is enabled for all blogs by default, however can be disabled by either:

  • The user disabling the feature globally (for all accounts) using the Accounts preferences panel.
  • The blog provider disabling auto-update using the <supportsAutoUpdate> option (described in the “Options” section below).

If enabled, Auto-Update is triggered for a blog whenever:

  • A new post which targets the blog is created
  • A post associated with the blog is opened
  • The user switches to the blog while authoring a post

To avoid latency, Auto-Update is performed in a delayed background thread. If the Auto-Update succeeds then an event is fired notifying the user-interface to update its state based on the new settings. If the Auto-Update fails then it does so silently (but logs any errors encountered to the Writer log file).

Some additional notes on Auto-Update:

  • Caching headers (Expires, Last-Modified, and ETag) are respected for Auto-Update manifest downloads.
  • Editing templates (<view> elements) are not included in Auto-Update processing.
  • In addition to downloading the manifest, Writer also refreshes the list of categories for the blog.
© 2016 Microsoft