diff --git a/lib/fix_links.py b/lib/fix_links.py
index 50db86faed6c34b0b40e086f5388f81e428fd602..2dd527ba9772d2020debf5d585fa4e2628d9ee39 100644
--- a/lib/fix_links.py
+++ b/lib/fix_links.py
@@ -29,7 +29,7 @@ def translate_content_type( content_type ):
     return output
 
 
-def protocol_to_formats_and_services( links ):
+def protocol_to_formats_and_services( links, inRecord ):
 
     output = links.copy()
 
@@ -47,6 +47,9 @@ def protocol_to_formats_and_services( links ):
         elif link['protocol'] == 'KML':
             output[k]['formats'] = ['KML']
             output[k]['service'] = 'KML'
+        elif link['protocol'] == 'WS' and inRecord['type'] == 'nonGeographicDataset':
+            output[k]['formats'] = ['JSON', 'CSV']
+            output[k]['service'] = 'WS'
         elif link['protocol'] == 'WS':
             output[k]['formats'] = ['JSON', 'ShapeFile', 'CSV']
             output[k]['service'] = 'WS'
@@ -67,7 +70,7 @@ def protocol_to_formats_and_services( links ):
     return output
 
 
-def fix_links( links, credentials=None ):
+def fix_links( links,inRecord, credentials=None ):
 
     fixed_links = links.copy()
 
@@ -180,7 +183,7 @@ def fix_links( links, credentials=None ):
                 fixed_links[k]['url'] = link['url'].split('?')[0]
 
 
-    return protocol_to_formats_and_services(fixed_links)
+    return protocol_to_formats_and_services(fixed_links,inRecord)
 
 
 if __name__ == '__main__':
@@ -285,5 +288,5 @@ if __name__ == '__main__':
                 }
         ]
 
-    fixed_links = fix_links(links)
+    fixed_links = fix_links(links,{})
     pprint(fixed_links)
diff --git a/workers/metadata_processor.py b/workers/metadata_processor.py
index f5fd321fe322cb2cc7a41820ed15ab6b1086f002..217bddf9edfce4d73d901451cf691c207b807265 100644
--- a/workers/metadata_processor.py
+++ b/workers/metadata_processor.py
@@ -161,7 +161,7 @@ def process_record( in_record, working_directory, credentials ):
     if 'link' in out_record['metadata-fr'].keys():
         del out_record['metadata-fr']['link']
         tmp = list_to_dictlist(in_record['link'], 'link')#links
-        out_record['metadata-fr']['link'] = enrich_links( fix_links(tmp, credentials), credentials, working_directory )
+        out_record['metadata-fr']['link'] = enrich_links( fix_links(tmp, in_record, credentials), credentials, working_directory )
 
     if 'userinfo' in out_record['metadata-fr'].keys():
         del out_record['metadata-fr']['userinfo']