title: Message "Could not generate schema document" in WCF help page
body: <p>I have a Rest API (WCF Net 4.0):</p>
  
  <pre><code>[ServiceContract]
  interface ISubscriptionService
  {
      [OperationContract]
      [WebInvoke(Method = "GET", UriTemplate = Routing.ProductsRoute, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
      [Description("Получение информации о продуктах")]
      ProductsResult Products(string timestamp, string transaction_id);
  }
  
  [ServiceBehavior(AddressFilterMode = AddressFilterMode.Any, InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Single, IncludeExceptionDetailInFaults = true)]
  [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
  class SubscriptionService : ISubscriptionService
  {
      public ProductsResult Products(string timestamp, string transaction_id)
      {
          SubscriptionProcessing processing = new SubscriptionProcessing();
          processing.SaveHistory(WebOperationContext.Current.IncomingRequest.UriTemplateMatch.RequestUri);
          return processing.GetProducts(timestamp,  transaction_id);
      }
  }
  </code></pre>
  
  <p>Web.config:</p>
  
  <pre><code>&lt;?xml version="1.0"?&gt;
  &lt;configuration&gt;
    &lt;system.web&gt;
      &lt;compilation debug="true" targetFramework="4.0"/&gt;
    &lt;/system.web&gt;
    &lt;system.serviceModel&gt;
      &lt;serviceHostingEnvironment aspNetCompatibilityEnabled="true"/&gt;
      &lt;behaviors&gt;
        &lt;serviceBehaviors&gt;
          &lt;behavior&gt;
            &lt;serviceMetadata httpGetEnabled="false"/&gt;
            &lt;serviceDebug includeExceptionDetailInFaults="false"/&gt;
          &lt;/behavior&gt;
        &lt;/serviceBehaviors&gt;
        &lt;endpointBehaviors&gt;
          &lt;behavior name="DefaultEndPointBehavior"&gt;
            &lt;webHttp helpEnabled="true" /&gt;
          &lt;/behavior&gt;
        &lt;/endpointBehaviors&gt;
      &lt;/behaviors&gt;
      &lt;services&gt;
        &lt;service name="CloudWebAPI.SubscriptionService"&gt;
          &lt;endpoint address="" kind="webHttpEndpoint" behaviorConfiguration="DefaultEndPointBehavior" contract="CloudWebAPI.ISubscriptionService" /&gt;
        &lt;/service&gt;
      &lt;/services&gt;
    &lt;/system.serviceModel&gt;
    &lt;system.webServer&gt;
      &lt;httpProtocol&gt;
        &lt;customHeaders&gt;
          &lt;add name="Access-Control-Allow-Methods" value="GET, POST, OPTIONS, PUT, DELETE"/&gt;
          &lt;add name="Access-Control-Allow-Origin" value="*"/&gt;
          &lt;add name="Access-Control-Allow-Headers" value="Content-Type"/&gt;
        &lt;/customHeaders&gt;
      &lt;/httpProtocol&gt;
    &lt;/system.webServer&gt;
  &lt;/configuration&gt;
  </code></pre>
  
  <p>Class ProductsResult:</p>
  
  <pre><code>[DataContract(Name = "result", Namespace = "")]
  public class ProductsResult : CommonResult
  {
      public ProductsResult()
      {
          Products = new List&lt;ProductResult&gt;();
      }
  
      [DataMember(Name = "products", Order = 3)]
      public List&lt;ProductResult&gt; Products { get; set; }
  }
  </code></pre>
  
  <p>Class CommonResult:</p>
  
  <pre><code>[DataContract(Name = "result", Namespace = "")]
  public class CommonResult
  {
      public CommonResult()
      {
          TransactionId = string.Empty;
          Error = new ErrorResult();
      }
  
      [DataMember(Name = "transaction_id", Order = 1)]
      public string TransactionId { get; set; }
      [DataMember(Name = "error", Order = 2)]
      public ErrorResult Error { get; set; }
  }
  </code></pre>
  
  <p>Class ErrorResult:</p>
  
  <pre><code>[DataContract(Name = "error", Namespace = "")]
  public class ErrorResult
  {
      public ErrorResult()
      {
          Code = 0;
          Message = string.Empty;
      }
  
      [DataMember(Name = "error", Order = 1)]
      public int Code { get; set; }
      [DataMember(Name = "message", Order = 2)]
      public string Message { get; set; }
  }
  </code></pre>
  
  <p>Opening the page .../rest/SubscriptionService.svc/help/operations/Products, I get:</p>
  
  <pre><code>Message direction   Format  Body
  Request N/A The Request body is empty.
  Response    Unknown Could not generate schema document.
  </code></pre>
  
  <p>But if you change the attribute on the class ProductsResult <strong>[DataContract (Name = "blabla", Namespace = "")]</strong>, everything works fine:</p>
  
  <pre><code>Response    Xml Example,Schema
  Response    Json    Example
  The following is an example response Xml body:
  ...
  </code></pre>
  
  <p>What is the reason?</p>