Skip to content

Allow .relations(data=True) instead of .relation_map() #271

@goodmami

Description

@goodmami

Is your feature request related to a problem? Please describe.

The data=True parameter on Forms, Counts, etc. was added so the methods return custom classes instead of basic datatypes, but Sense.relations() and Synset.relations() don't follow this pattern and instead have separate Sense.relation_map() and Synset.relation_map() methods.

Describe the solution you'd like

For the sake of consistency, give Sense.relations() and Synset.relations() the data parameter. If this is done in a 1.0 release, the .relation_map() methods should be removed, or maybe just raise an error with an explanation of what to do instead.

Note that, unlike the other classes, this doesn't just change the type of list items, but also changes the value of the mapping from a list to a single item ({relname: [relatable]} to {relation: relatable}).

Describe alternatives you've considered

Keeping things the way they are is ok, but this seems like an opportunity for a cleaner API (well, fewer methods at the expense of more complex methods).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions