[OperationContract]
[FaultContract(typeof(CatalogReferenceNotFoundContract))]
[FaultContract(typeof(DbFaultContract))]
[SwaggerWcfTag("Catalog (common)", false)]
[SwaggerWcfPath(null, null, null, null, null, false, null, Summary = "Find catalog chemical products by given search criteria", Description = "Returns the catalog chemical product overview by given search criteria")]
[WebInvoke(UriTemplate = "/FindMatchingChemicalsOverview", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
[SwaggerWcfResponse(StatusCode = HttpStatusCode.OK, Description = "Success")]
[SwaggerWcfResponse(StatusCode = HttpStatusCode.InternalServerError, Description = "An unexpected error occurred while processing the request.", Type = typeof(JsonErrorMessage))]
[SwaggerWcfResponse(StatusCode = HttpStatusCode.BadRequest, Description = "Fault exception", Type = typeof(JsonErrorMessage))]
CatalogChemicalProductsOverviewContract[] FindMatchingChemicalProductsOverview(CatalogSearchQueryContract searchQuery)