Skip to content

Commit e26dad9

Browse files
committed
fix: issues with creator
1 parent d9f1e8c commit e26dad9

File tree

2 files changed

+11
-11
lines changed

2 files changed

+11
-11
lines changed

dandischema/tests/test_google_dataset_metadata.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -76,13 +76,13 @@ def test_google_dataset_metadata_basic_transformation(sample_dandiset_metadata):
7676
# Check that schema:Dataset is added to schemaKey
7777
assert "schema:Dataset" in result["schemaKey"]
7878

79-
# Check that creator is properly formatted
80-
assert "creator" in result
81-
assert isinstance(result["creator"], list)
82-
assert len(result["creator"]) > 0
79+
# Check that schema:creator is properly formatted
80+
assert "schema:creator" in result
81+
assert isinstance(result["schema:creator"], list)
82+
assert len(result["schema:creator"]) > 0
8383

8484
# Check first creator
85-
creator = result["creator"][0]
85+
creator = result["schema:creator"][0]
8686
assert creator["schemaKey"] == "schema:Person"
8787
assert "name" in creator
8888

@@ -168,8 +168,8 @@ def test_google_dataset_metadata_with_no_contributors(sample_dandiset_metadata):
168168

169169
result = google_dataset_metadata(no_contributor_metadata)
170170

171-
# Check that creator is not in the result
172-
assert "creator" not in result
171+
# Check that schema:creator is not in the result
172+
assert "schema:creator" not in result
173173

174174

175175
def test_google_dataset_metadata_with_date_published(sample_dandiset_metadata):

dandischema/utils.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -290,8 +290,8 @@ def google_dataset_metadata(metadata: Dict[str, Any]) -> Dict[str, Any]:
290290
# If no schemaKey exists, create one
291291
result["schemaKey"] = ["schema:Dataset"]
292292

293-
# Create creator field from contributor if it doesn't exist
294-
if "creator" not in result and "contributor" in result:
293+
# Create schema:creator field from contributor if it doesn't exist
294+
if "schema:creator" not in result and "contributor" in result:
295295
# Filter contributors with Author role
296296
authors = [
297297
contrib for contrib in result["contributor"]
@@ -302,7 +302,7 @@ def google_dataset_metadata(metadata: Dict[str, Any]) -> Dict[str, Any]:
302302
creators = authors if authors else result["contributor"]
303303

304304
# Format creators according to schema.org requirements
305-
result["creator"] = []
305+
result["schema:creator"] = []
306306
for person in creators:
307307
# Create a new creator object with updated schemaKey
308308
creator = {
@@ -314,7 +314,7 @@ def google_dataset_metadata(metadata: Dict[str, Any]) -> Dict[str, Any]:
314314
if person.get("identifier"):
315315
creator["identifier"] = person["identifier"]
316316

317-
result["creator"].append(creator)
317+
result["schema:creator"].append(creator)
318318

319319
# Update contributor schemaKey and remove roleName
320320
if "contributor" in result:

0 commit comments

Comments
 (0)