@@ -9,8 +9,8 @@ def __init__(self, provider):
99 self .provider = provider
1010 self .id = None
1111 self .modified = None
12+ self .sets = {}
1213 self .deleted = False
13- self .sets = dict ()
1414 self .metadata = dict ()
1515
1616 def update (self , path ):
@@ -25,9 +25,9 @@ def update(self, path):
2525
2626 self .root = doc .getroot ()
2727
28- id = xpath .string ('// Persistent_Identifier_Datapackage' )
28+ id = xpath .string ("/metadata/system/ Persistent_Identifier_Datapackage[Identifier_Scheme='DOI']/Identifier" )
2929 if not id :
30- log .warning ("Missing Persistent Identifier of Datapackage in %s" .format (path ))
30+ log .warning ("Missing Persistent Identifier (DOI) of Datapackage in %s" .format (path ))
3131 return
3232
3333 self .id = 'oai:%s' % id
@@ -81,7 +81,7 @@ def update(self, path):
8181 self .metadata ['date' ] = dates
8282
8383 rightsinxml = [xpath .string ('//License' ),
84- xpath .string ('//License/Properties/URL ' )]
84+ xpath .string ('//system/License_URL ' )]
8585
8686 rights = [r for r in rightsinxml if r ]
8787 if rights :
@@ -92,8 +92,8 @@ def update(self, path):
9292 if subject :
9393 self .metadata ['subject' ] = subject
9494
95- locations = xpath .strings ('//Location_Covered ' )
96- perioddates = [xpath .string ('//Start_Period ' ), xpath .string ('//End_Period ' )]
95+ locations = xpath .strings ('//Covered_Geolocation_Place ' )
96+ perioddates = [xpath .string ('//Covered_Period/Start_Date ' ), xpath .string ('//Covered_Period/End_Date ' )]
9797 period = "/" .join ([d for d in perioddates if d ])
9898 if period :
9999 coverage = locations + [period ]
@@ -102,11 +102,3 @@ def update(self, path):
102102 if coverage :
103103 self .metadata ['coverage' ] = coverage
104104
105- relations = xpath .strings ('//Persistent_Identifier' )
106- if relations :
107- self .metadata ['relation' ] = relations
108-
109- self .sets [u'yoda' ] = {
110- u'name' : u'YoDa' ,
111- u'description' : u'share-collaborate environment for research data'
112- }
0 commit comments