Example Class Diagram using Mermaid

Created using Mermaid


          ---
          title: SFAC 6 - Elements of Financial Statement
          ---
          classDiagram
              note "This is an example of a class diagram 
using SFAC 6 - Elements of Financial Statement." FinancialStatement <--> EconomicEntity FinancialStatement *-- BalanceSheet : has-Part FinancialStatement *-- IncomeStatement : has-Part FinancialStatement *-- ChangesInEquity : has-Part BalanceSheet *-- Assets : has-Part BalanceSheet *-- Liabilities : has-Part BalanceSheet *-- Equity : has-Part IncomeStatement *-- Revenues : has-Part IncomeStatement *-- Expenses : has-Part IncomeStatement *-- Gains : has-Part IncomeStatement *-- Losses : has-Part Revenues --* ComprehensiveIncome : has-Part Expenses --* ComprehensiveIncome : has-Part Gains --* ComprehensiveIncome : has-Part Losses --* ComprehensiveIncome : has-Part ChangesInEquity *-- InvestmentsByOwners : instant-inflow ChangesInEquity *-- DistributionsToOwners : instant-outflow ChangesInEquity *-- ComprehensiveIncome : instant-inflow Equity *-- ChangesInEquity FinancialStatement : +Valid boolean FinancialStatement : +Amended boolean FinancialStatement : +ReportingCurrency iso1477 FinancialStatement : +ReportingStyle enumeration FinancialStatement : +ReportingScheme enumeration FinancialStatement : -isValidXBRL() FinancialStatement : -isValidMathematically() FinancialStatement : -isValidReportModel() FinancialStatement : -isValidTypes() FinancialStatement : -isValidDisclosureMechanics() FinancialStatement : -isValidDisclosureChecklist() FinancialStatement : -isValidConsistencyCrosschecks() class BalanceSheet{ -Balances boolean -Classified boolean -Foots boolean +isClassified(boolean) +isSolvent() +isLiquid() } class IncomeStatement{ +Foots boolean +Multistep boolean +isProfitable() +isLiquid() } class ChangesInEquity{ +Reconciles boolean +paidDividends() +hasAccumulatedComprehensiveIncome() } class Assets{ +monetary DEBIT +canAquire() -canDispose() } class Liabilities{ +monetary CREDIT -canAquire() +canDispose() } class Equity{ +monetary CREDIT +canInvestIn() -canDistributeDividends() } class ComprehensiveIncome{ +monetary CREDIT +canAquire() -canDispose() } class InvestmentsByOwners{ +monetary CREDIT +canAquire() -canDispose() } class DistributionsToOwners{ +monetary DEBIT +canAquire() -canDispose() } class Revenues{ +monetary CREDIT +canAquire() -canDispose() } class Expenses{ +monetary DEBIT +canAquire() -canDispose() } class Gains{ +monetary CREDIT +canAquire() -canDispose() } class Losses{ +monetary DEBIT +canAquire() -canDispose() } class EconomicEntity{ +Domicile String +ReportingCurrency iso4677 +isConsolidated() -isGoingConcern() }

Created using a Mermaid mind map.