ボンド・マーケットプレイス・チェーンコード・パッケージ
Oracle Blockchain Platform Digital Assets Editionには、債券NFTマーケットプレイス・シナリオのサンプル・チェーンコードが含まれています。
ボンド・マーケットプレイス・チェーンコードは、小数非代替トークン(NFT)で表される債券の管理および取引をサポートします。チェーンコード・メソッドを使用して、分散環境で債券NFTを発行、購入、償還および取引できます。
ボンド・マーケットプレイスのチェーンコード・パッケージは、Oracle Blockchain Platformコンソールからダウンロードでき、次のコンポーネントが含まれています。
BondMarketplace.zip
。デプロイメント用のパッケージ・チェーンコードを含むアーカイブ・ファイル。BondMarketplace.yaml
。ブロックチェーン・アプリケーション・ビルダーでWholesaleCBDC
チェーンコードをスキャフォールドするために使用できる仕様ファイルです。BondMarketplace_postman_collection.json
: チェーンコード内のAPIをテストできるPostmanコレクション。README.md
は、チェーンコードを使用するためのステップバイステップ・ガイドです。
ボンド・マーケットプレイスのチェーンコード・パッケージを取得するには、Oracle Blockchain Platformデジタル・アセット・コンソールで「デジタル・アセット」タブをクリックし、「ボンド・マーケットプレイス・アプリケーション」を選択します。
仕様ファイル
ボンド・マーケットプレイス仕様ファイル(Bond_Marketplace.yml
)は、拡張ERC-1155仕様ファイルに基づいています。これには、アプリケーション固有のチェーンコードを生成するmodel
属性が含まれます。この場合、model: bond
は、チェーンコードの生成時に債券マーケットプレイス・アプリケーション用の追加のメソッドを作成します。また、ファイルのメタデータ・セクションで特定のパラメータを設定する必要があります。#
# Copyright (c) 2025, Oracle and/or its affiliates. All rights reserved.
#
# Token asset to manage the complete lifecycle of a Bond in a primary Bond marketplace.
assets:
- name: Bond #Asset name
type: token #Asset type
standard: erc1155+ # Token standard
events: true # Supports event code generation for non-GET methods
model: bond # Supports creation of additional methods for Primary Bond marketplace
anatomy:
type: nonfungible # Token type
unit: fractional #Token unit
behavior: # Bond token behaviors
- divisible:
- mintable:
- transferable
- burnable
- roles:
minter_role_name: minter
burner_role_name: burner
properties: # Custom asset attributes for non-fungible Bond token.
- name: status # Custom asset attribute maintains the status of the Bond.
type: string
mandatory: true
metadata: # To maintain the metadata on-chain, this tag will be used. Users won't be able to update the metadata attribute values after the bond token is minted.
- name: ISIN # A unique alphanumeric code that identifies a specific bond internationally.
type: string
mandatory: true
- name: Segment # The classification of bonds based on issuer type or purpose, such as corporate, government, sovereign, or green bonds.
type: string
- name: Issuer # The entity, such as a corporation or government, that issues the bond.
type: string
mandatory: true
- name: FaceValue # The principal amount of the bond that will be repaid at maturity.
type: number
mandatory: true
- name: IssueSize # The total monetary value or quantity of bonds issued by the issuer.
type: number
mandatory: true
- name: CouponRate # The annual interest rate that the bond pays, typically as a percentage of the face value.
type: float
mandatory: true
- name: InterestPaymentType # Specifies whether the bond pays simple or compound interest.
type: string
mandatory: true
validate: /^\\s*(simple)\\s*$/
- name: InterestFrequency # The regularity with which interest payments are made, such as monthly, quarterly, annually or at maturity.
type: string
mandatory: true
validate: /^\s*["]?((monthly|quarterly|annually|at maturity)\s*)["]?\s*$/
- name: IssueDate # The date when the bond was initially issued.
type: date
mandatory: true
- name: MaturityDate # The date on which the bond’s principal amount will be repaid to the bondholder.
type: date
mandatory: true
customMethods:
表4-1ボンド・マーケットプレイス仕様ファイルのメタデータ・パラメータ
開始時 | 説明 |
---|---|
name: ISIN |
結合を識別する一意の12文字の英数字コードである文字列。 |
name: Segment |
結合のセグメント・タイプを表す文字列。 |
name: Issuer |
ボンドの発行者を表す文字列。 |
name: FaceValue |
ボンド・トークンの額面値(価格)を表す数値。 |
name: IssueSize |
債券の発行サイズ(合計数量)を表す数値。 |
name: CouponRate |
債券のクーポン・レート(金利)を表す数値。1年当たりのレートである必要があります。 |
name: InterestPaymentType |
利息支払タイプを表す文字列。サポートされている値はsimple のみです。
|
name: InterestFrequency |
ボンド・トークンの利息頻度を表す文字列。次に、サポートされている値を示します。
|
name: IssueDate |
債券の発行日を表す日付。 |
name: MaturityDate |
債券の満期日を表す日付。 |