diff --git a/R/readWQPdata.R b/R/readWQPdata.R
index 3aa5fbace53b873b093a196e231ed4bdf79f5334..cc5831841746660c78bb1a73f5e3b19d925d49ba 100644
--- a/R/readWQPdata.R
+++ b/R/readWQPdata.R
@@ -91,9 +91,8 @@
 #' pHData <- readWQPdata(siteid="USGS-04024315",characteristicName=nameToUse)
 #' pHDataExpanded2 <- readWQPdata(bBox=c(-90.10,42.67,-88.64,43.35),characteristicName=nameToUse)
 #' startDate <- as.Date("2013-01-01")
-#' nutrientPysical <- readWQPdata(statecode="US:55",siteType="Stream",
-#'                         sampleMedia="Water",startDate=startDate,
-#'                         characteristicType=c("Nutrient","Physical"))
+#' nutrientDaneCounty <- readWQPdata(countycode="US:55:025",startDate=startDate,
+#'                         characteristicType="Nutrient")
 #' }
 readWQPdata <- function(...){
   
@@ -113,17 +112,25 @@ readWQPdata <- function(...){
 
   if(any(names(values) %in% dateNames)){
     index <- which(names(values) %in% dateNames)
-    # If a valid R date was put in, the format needs to be changed to mm-dd-yyyy for the WQP:
-    if(all(is.Date(as.Date(values[index])))){  
-      dates <- as.Date(values[index])
-      dates <- format(as.Date(dates), format="%m-%d-%Y")
-      values[index] <- dates
-    } else if (!all(is.Date(as.Date(values[index],format="%m-%d-%Y")))){
-      warning("Please check the date format for the arguments: ", paste(names(values)[index], collapse=", "))
+    
+    if("" %in% values[index]){
+      values <- values[-index[values[index] == ""]]
+      index <- which(names(values) %in% dateNames)
     }
     
-    names(values)[names(values) == 'startDate'] <- 'startDateLo'
-    names(values)[names(values) == 'endDate'] <- 'startDateHi'
+    if(length(index) > 0){
+      # If a valid R date was put in, the format needs to be changed to mm-dd-yyyy for the WQP:
+      if(any(!is.na(as.Date(values[index], format="%Y-%m-%d")))){  
+        dates <- as.Date(values[index[!is.na(as.Date(values[index], format="%Y-%m-%d"))]])
+        dates <- format(as.Date(dates), format="%m-%d-%Y")
+        values[index] <- dates
+      } else if (any(is.na(as.Date(values[index], format="%m-%d-%Y")))){
+        warning("Please check the date format for the arguments: ", paste(names(values)[index], collapse=", "))
+      }
+      
+      names(values)[names(values) == 'startDate'] <- 'startDateLo'
+      names(values)[names(values) == 'endDate'] <- 'startDateHi'
+    }
     
   }
   
@@ -161,10 +168,16 @@ readWQPdata <- function(...){
                                stringsAsFactors=FALSE)
     
     if(any(!is.na(variableInfo$parameterCd))){
+      pcodes <- unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)])
+      pcodes <- pcodes["" != pcodes]
+      paramINFO <- readNWISpCode(pcodes)
+      names(paramINFO)["parameter_cd" == names(paramINFO)] <- "parameterCd"
+      
       pCodeToName <- pCodeToName
       varExtras <- pCodeToName[pCodeToName$parm_cd %in% unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),]
       names(varExtras)[names(varExtras) == "parm_cd"] <- "parameterCd"
       variableInfo <- merge(variableInfo, varExtras, by="parameterCd", all = TRUE)
+      variableInfo <- merge(variableInfo, paramINFO, by="parameterCd", all = TRUE)
       variableInfo <- unique(variableInfo)
     }
     
diff --git a/R/readWQPqw.r b/R/readWQPqw.r
index 195fcbe830087296c54e0edc8d9f918819db297f..17d34ae80b120e57a45bc748e7df4f839b9d8d1e 100644
--- a/R/readWQPqw.r
+++ b/R/readWQPqw.r
@@ -102,7 +102,7 @@
 #' rawPcode <- readWQPqw('USGS-01594440','01075', '', '')
 #' rawCharacteristicName <- readWQPqw('WIDNR_WQX-10032762','Specific conductance', '', '')
 #' rawPHsites <- readWQPqw(c('USGS-05406450', 'USGS-05427949','WIDNR_WQX-133040'), 'pH','','')
-#' nwisEx <- readWQPqw('USGS-04024000',c('34247','30234','32104','34220'),'','')
+#' nwisEx <- readWQPqw('USGS-04024000',c('34247','30234','32104','34220'),'','2012-12-20')
 #' }
 readWQPqw <- function(siteNumbers,parameterCd,startDate="",endDate=""){
 
@@ -148,11 +148,17 @@ readWQPqw <- function(siteNumbers,parameterCd,startDate="",endDate=""){
   variableInfo <- unique(variableInfo)
   
   if(any(variableInfo$parameterCd != "")){
+    pcodes <- unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)])
+    pcodes <- pcodes["" != pcodes]
+    paramINFO <- readNWISpCode(pcodes)
+    names(paramINFO)["parameter_cd" == names(paramINFO)] <- "parameterCd"
+    
     pCodeToName <- pCodeToName
-    varExtras <- pCodeToName[pCodeToName$parm_cd %in% 
-                               unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),]
+    varExtras <- pCodeToName[pCodeToName$parm_cd %in% unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),]
     names(varExtras)[names(varExtras) == "parm_cd"] <- "parameterCd"
-    variableInfo <- merge(variableInfo, varExtras, by="parameterCd", all=TRUE)
+    variableInfo <- merge(variableInfo, varExtras, by="parameterCd", all = TRUE)
+    variableInfo <- merge(variableInfo, paramINFO, by="parameterCd", all = TRUE)
+    variableInfo <- unique(variableInfo)
   }
   
   attr(retval, "siteInfo") <- siteInfo
diff --git a/R/whatWQPsites.R b/R/whatWQPsites.R
index c9b15dbd4c66adcacc8095566556cf0665becc5c..70f01708f237b6a2b9fa4076fe30c294861720cb 100644
--- a/R/whatWQPsites.R
+++ b/R/whatWQPsites.R
@@ -73,20 +73,28 @@ whatWQPsites <- function(...){
   
   if(any(names(values) %in% dateNames)){
     index <- which(names(values) %in% dateNames)
-    # If a valid R date was put in, the format needs to be changed to mm-dd-yyyy for the WQP:
-    if(all(is.Date(as.Date(values[index])))){  
-      dates <- as.Date(values[index])
-      dates <- format(as.Date(dates), format="%m-%d-%Y")
-      values[index] <- dates
-    } else if (!all(is.Date(as.Date(values[index],format="%m-%d-%Y")))){
-      warning("Please check the date format for the arguments: ", paste(names(values)[index], collapse=", "))
+    
+    if("" %in% values[index]){
+      values <- values[-index[values[index] == ""]]
+      index <- which(names(values) %in% dateNames)
     }
     
-    names(values)[names(values) == 'startDate'] <- 'startDateLo'
-    names(values)[names(values) == 'endDate'] <- 'startDateHi'
+    if(length(index) > 0){
+      # If a valid R date was put in, the format needs to be changed to mm-dd-yyyy for the WQP:
+      if(any(!is.na(as.Date(values[index], format="%Y-%m-%d")))){  
+        dates <- as.Date(values[index[!is.na(as.Date(values[index], format="%Y-%m-%d"))]])
+        dates <- format(as.Date(dates), format="%m-%d-%Y")
+        values[index] <- dates
+      } else if (any(is.na(as.Date(values[index], format="%m-%d-%Y")))){
+        warning("Please check the date format for the arguments: ", paste(names(values)[index], collapse=", "))
+      }
+      
+      names(values)[names(values) == 'startDate'] <- 'startDateLo'
+      names(values)[names(values) == 'endDate'] <- 'startDateHi'
+    }
     
   }
-  
+    
   urlCall <- paste(paste(names(values),values,sep="="),collapse="&")
   
   
diff --git a/man/readWQPdata.Rd b/man/readWQPdata.Rd
index b02c7df1e2cc3e6b5cbbb5a8869121e4a69a0559..3d71d35db9f0bc56cf9e184cb1c2a0bc1883d61b 100644
--- a/man/readWQPdata.Rd
+++ b/man/readWQPdata.Rd
@@ -98,12 +98,10 @@ because it allows for other agencies rather than the USGS.
 \dontrun{
 nameToUse <- "pH"
 pHData <- readWQPdata(siteid="USGS-04024315",characteristicName=nameToUse)
-pHDataExpanded <- readWQPdata(bBox="-90.10,42.67,-88.64,43.35",characteristicName=nameToUse)
 pHDataExpanded2 <- readWQPdata(bBox=c(-90.10,42.67,-88.64,43.35),characteristicName=nameToUse)
-startDate <- as.Date("2008-01-01")
-nutrientPysical <- readWQPdata(statecode="US:55",siteType="Stream",
-                        samplMedia="Water",startDateLo=startDate,
-                        characteristicType=c("Nutrient","Physical))
+startDate <- as.Date("2013-01-01")
+nutrientDaneCounty <- readWQPdata(countycode="US:55:025",startDate=startDate,
+                        characteristicType="Nutrient")
 }
 }
 \keyword{WQP}