Skip to content

Subtyping and a ternary edge might improve the Financial Benchmark model #108

@MalcolmCrowe

Description

@MalcolmCrowe

Subtyping and n-ary edges are among possible extensions of GQL proposed in the LDBC community.
Subtyping has caused considerable discussion: for example, both PERSON and COMPANY can own an ACCOUNT, and it seems natural to create a supertype (LEGALENTITY perhaps) so that a LEGALENTITY can own an ACCOUNT. There is currently nothing in the GQL specification about keys (and ID is not a reserved word), but the Financial Benchmark specification frequently treats ID as a key. In the data, ID is a key for PERSON and for COMPANY, there are values of ID that are common to both, so that ID is not a key in LEGALENTITY. Renaming this field in one of the types removes the difficulty.
Similar issues arise for ACCOUNT and LOAN (if we create a supertype ACTBASE).
The Financial Benchmark does not seem to create IDs for edges, so that GUARANTEE naturally becomes an edge from LEGALENTITY to LEGALENTITY, INVEST from LEGALENTITY to COMPANY, OWN from LEGALENTITY to ACTBASE and so on. For importing the data from the existing csv files, it becomes useful to distinguish edge subtypes such as PERSONOWNACCOUNT.
The SIGNIN edge type is interesting: it stands to reason that a SIGNIN for an account could be used to authorise a TRANSFER from an ACCOUNT: incorporating that in the model can be achieved in several ways e.g., as an undirected edge connecting these two edges.
The Financial Benchmark suggests that the workload procedures could be used in triggers as financial data arrives or is imported. Triggers can also be used to keep track of Balance and LastLogin/LastLoginTime fields, and to add the authorisation field for a TRANSFER.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions