Add a class diagram for terms. by aucampia · Pull Request #1682 · RDFLib/rdflib (original) (raw)

Thanks @aucampia, as always! I think the diagram really helps and it looks really great. I think I'll do more of these in other Python projects of mine that have interesting class hierarchies (I am actually a data modeller, not a software engineer after all).

Sadly, looking at the diagram, I think we need to tidy up the classes more:

I think we should update URIRef to a more naturally-named IRI class - while retaining an alias so people can still call URIRef in code, if that's possible - and also consider renaming Identifier to Term to avoid overuse of the word identifier, while retaining a legacy alias too. Like the potential ConjunctiveGraph / Dataset deduplication, these structures and names matter for they cloud understanding if bad and help it greatly if good.

Something for rdflib 7.0.0...

Waiting for a review from @gjhiggins since he made the first class diagram.