Skip to content

Commit

Permalink
Check form of creative work for literary work collection too
Browse files Browse the repository at this point in the history
  • Loading branch information
dseomn committed Dec 18, 2023
1 parent 575f90a commit 11f17ee
Showing 1 changed file with 13 additions and 6 deletions.
19 changes: 13 additions & 6 deletions rock_paper_sand/wikidata.py
Original file line number Diff line number Diff line change
Expand Up @@ -669,12 +669,6 @@ def _integral_child_classes(
yield (self._tv_season_classes, self._music_classes)
yield (self._tv_season_part_classes, self._music_classes)
yield (self._music_classes, self._music_classes)
yield (
self._api.transitive_subclasses(
wikidata_value.Q_COLLECTION_OF_LITERARY_WORKS
),
self._api.transitive_subclasses(wikidata_value.Q_LITERARY_WORK),
)

def _is_integral_child(
self, parent: wikidata_value.ItemRef, child: wikidata_value.ItemRef
Expand All @@ -696,6 +690,9 @@ def _is_integral_child(
child: Child.
"""
parent_classes = self._api.entity_classes(parent)
parent_classes_and_forms = (
parent_classes | self._api.forms_of_creative_work(parent)
)
child_classes = self._api.entity_classes(child)
for (
parent_classes_to_check,
Expand Down Expand Up @@ -733,6 +730,16 @@ def _is_integral_child(
and parent_classes & self._tv_episode_parent_classes
):
return True
if (
parent_classes_and_forms
& self._api.transitive_subclasses(
wikidata_value.Q_COLLECTION_OF_LITERARY_WORKS
)
) and (
child_classes
& self._api.transitive_subclasses(wikidata_value.Q_LITERARY_WORK)
):
return True
return False

def _integral_children(
Expand Down

0 comments on commit 11f17ee

Please sign in to comment.