test.classDiagram.mmd

    classDiagram
        class BankAccount
        BankAccount : +String owner
        BankAccount : -deposit(amount) int

        class Duck{
            +String beakColor
            #swim() int
            -canEat()
        }

        namespace BaseShapes {
            class Triangle
            class Rectangle {
                double width
                double height
            }
        }

        class nodeid[ "" "name<br>of&lt;#lt;*class*\'" "" ]:::css_class_name {
            +method() int
        }

        class `s\*a#lt;\\ \^*_d_s\n<i class="Dsds">dsds</i>a`:::css_class_name

        class Anim-al:::cssClass {
            <<fdsfs>>
            +attr: j\nk
            ~foo()  : jk
            dsd() vc : ds<b>dfdfdsd</b>
        }

        class Square~Shape~{
            int id
            List~int~ position
            setPoints(List~int~ points)
            getPoints() List~int~ \#lt;\#\*\n`jk` *ds*d
        }

        Square : -List~string~ messages
        Square : +setMessages(List~string~ messages)
        Square : +getMessages() List~string~
        Square : +getDistanceMatrix() List~List~int~~

        note "From Duck till Zebra"
        Animal <|-- Duck
        note for Duck "can<br>fly"
        Animal <|-- Fish

        A-A*-->B : text link<br>bla bla
        A-A>--oB
        A-A()--<B
        A-A--B : text link<br>bla bla
        A-A<--oB
        A-A|>--<|B
        A-A<|--|>B
        A-A o--()B

        A-A*..>B : text link<br>bla bla
        A-A>..oB
        A-A()..<B
        A-A..B : text link<br>bla bla
        A-A<..oB
        A-A|>..<|B
        A-A<|..|>B
        A-A o..()B

        cssClass "Animal,Animal2" someclass
        classDef someclass fill:#f96

        click className call callback() "tooltip"
        click className href "url" "tooltip"

        callback Class01 "callbackFunction" "Callback tooltip"
        link Class02 "https://example.com" "This is a link"

        direction RL

        style Animal fill:#f9f,stroke:#333,stroke-width:4px