@@ -866,9 +866,16 @@ def graph_from_dataset(self, dataset_dict, dataset_ref): # noqa
866
866
# Languages
867
867
languages = dataset_dict .get ('language' , [])
868
868
for lang in languages :
869
- uri = language_uri_map .get (lang )
870
- if uri :
871
- g .add ((dataset_ref , DCT .language , URIRef (uri )))
869
+ if lang .startswith ('http://' ) or lang .startswith ('https://' ):
870
+ # lang is already a full IRI, use directly
871
+ g .add ((dataset_ref , DCT .language , URIRef (lang )))
872
+ else :
873
+ uri = language_uri_map .get (lang )
874
+ if uri :
875
+ g .add ((dataset_ref , DCT .language , URIRef (uri )))
876
+ else :
877
+ log .debug ("Language '{}' not found in"
878
+ " language_uri_map" .format (lang ))
872
879
873
880
# Relations
874
881
if dataset_dict .get ('relations' ):
@@ -1035,6 +1042,20 @@ def graph_from_dataset(self, dataset_dict, dataset_ref): # noqa
1035
1042
if uri :
1036
1043
g .add ((distribution , DCT .language , URIRef (uri )))
1037
1044
1045
+ # Language
1046
+ languages = resource_dict .get ('language' , [])
1047
+ for lang in languages :
1048
+ if lang .startswith ('http://' ) or lang .startswith ('https://' ):
1049
+ # lang is already a full IRI, use directly
1050
+ g .add ((distribution , DCT .language , URIRef (lang )))
1051
+ else :
1052
+ uri = language_uri_map .get (lang )
1053
+ if uri :
1054
+ g .add ((distribution , DCT .language , URIRef (uri )))
1055
+ else :
1056
+ log .debug ("Language '{}' not found in"
1057
+ " language_uri_map" .format (lang ))
1058
+
1038
1059
# Download URL & Access URL
1039
1060
download_url = resource_dict .get ('download_url' )
1040
1061
if download_url :
@@ -1407,12 +1428,19 @@ def graph_from_dataset(self, dataset_dict, dataset_ref):
1407
1428
distribution , DCT .description , "description" , resource_dict
1408
1429
) # noqa
1409
1430
1410
- # Language
1431
+ # Language
1411
1432
languages = resource_dict .get ('language' , [])
1412
1433
for lang in languages :
1413
- uri = language_uri_map .get (lang )
1414
- if uri :
1415
- g .add ((distribution , DCT .language , URIRef (uri )))
1434
+ if lang .startswith ('http://' ) or lang .startswith ('https://' ):
1435
+ # lang is already a full IRI, use directly
1436
+ g .add ((distribution , DCT .language , URIRef (lang )))
1437
+ else :
1438
+ uri = language_uri_map .get (lang )
1439
+ if uri :
1440
+ g .add ((distribution , DCT .language , URIRef (uri )))
1441
+ else :
1442
+ log .debug ("Language '{}' not found in"
1443
+ " language_uri_map" .format (lang ))
1416
1444
1417
1445
# Download URL & Access URL
1418
1446
self .download_access_url (resource_dict , distribution , g )
0 commit comments