@startuml class org.accordproject.finance.bond.CouponType << (E,grey) >> { + FIXED + FLOATING } org.accordproject.finance.bond.CouponType --|> concerto.Concept class org.accordproject.finance.bond.PaymentFrequency { + Integer periodMultiplier + Duration period } org.accordproject.finance.bond.PaymentFrequency --|> concerto.Concept class org.accordproject.finance.bond.Bond { + String[] instrumentId + String description + CurrencyCode currency + String[] exchangeId + String clearanceSystem + String definition + String seniority + CouponType couponType + Double couponRate + DateTime maturity + Double parValue + Double faceAmount + PaymentFrequency paymentFrequency + String dayCountFraction + Organization issuer } org.accordproject.finance.bond.Bond --|> concerto.Concept class org.accordproject.finance.bond.BondAsset << (A,green) >> { + String ISINCode + Bond bond } org.accordproject.finance.bond.BondAsset --|> concerto.Asset @enduml