@startuml skinparam shadowing false skinparam monochrome true skinparam packageStyle rectangle skinparam backgroundColor FFFFFE class Node class Identifier { eq(other) -> bool neq(other) -> bool startswith(prefix: str, start, end) -> bool } Identifier -up-|> Node class IdentifiedNode { toPython() -> str } IdentifiedNode -up-|> Identifier class URIRef { n3(namespace_manager) -> str defrag() -> URIRef de_skolemize() -> BNode } URIRef -up-|> IdentifiedNode class Genid Genid -up-|> URIRef class RDFLibGenid RDFLibGenid -up-|> Genid class BNode { n3(namespace_manager) -> str skolemize(authority, basepath) -> RDFLibGenid } BNode -up-|> IdentifiedNode class Literal { datatype: Optional[str] lang: Optional[str] value: Any normalize() -> Literal n3(namespace_manager) -> str toPython() -> str } Literal -up-|> Identifier class Variable { n3(namespace_manager) -> str toPython() -> str } Variable -up-|> Identifier @enduml