A core class representing commodity trading transactions in the Skyocean ecosystem.
A skyocean:Trade represents a transaction between
parties for the exchange of agricultural commodities. The trade
class captures all essential information about the transaction,
including involved parties, commodity details, pricing, logistics
arrangements, documentation, and payment terms. This forms the
core building block for all commodity trading activities in the
Skyocean ecosystem.
| Property | Type | Description | Cardinality |
|---|---|---|---|
schema:identifier |
xsd:string | Unique identifier for the trade (typically a purchase order number) | 1..1 |
schema:name |
xsd:string | Human-readable name for the trade | 0..1 |
schema:description |
xsd:string | Brief description of the trade | 0..1 |
skyocean:buyer |
skyocean:TradeParty | The party purchasing the commodity | 1..1 |
skyocean:seller |
skyocean:TradeParty | The party selling the commodity | 1..1 |
skyocean:commodity |
skyocean:Commodity | The commodity being traded | 1..1 |
skyocean:tradeDate |
xsd:date | Date when the trade agreement was established | 1..1 |
skyocean:tradingTerm |
URI | Trading term (e.g., Incoterm) used for the trade | 1..1 |
skyocean:quantity |
schema:QuantitativeValue | Total quantity of commodity in the trade | 1..1 |
skyocean:quantityUnit |
URI | Unit of measurement for quantity | 1..1 |
skyocean:originLocation |
schema:Place | Origin location of the commodity | 1..1 |
skyocean:destinationLocation |
schema:Place | Destination location for the commodity | 1..1 |
skyocean:deliveryPeriod |
Object | Period during which delivery should take place | 1..1 |
skyocean:logisticsProvider |
skyocean:TradeParty | Party responsible for logistics | 0..1 |
skyocean:inspectionAgency |
skyocean:TradeParty | Agency responsible for quality inspection | 0..1 |
skyocean:documents |
Array of skyocean:Document | Documents associated with the trade | 0..* |
skyocean:status |
URI | Current status of the trade | 1..1 |
In DKG v8, the following properties are typically stored in the private section of the Knowledge Asset:
| Property | Type | Description | Cardinality |
|---|---|---|---|
skyocean:referenceId |
URI | Reference to the public section URI | 1..1 |
skyocean:unitPrice |
schema:MonetaryAmount | Price per unit of the commodity | 1..1 |
skyocean:totalPrice |
schema:MonetaryAmount | Total price of the trade | 1..1 |
skyocean:paymentTerms |
Object | Payment terms agreed for the trade | 1..1 |
skyocean:financialInstitution |
skyocean:TradeParty | Bank or financial institution handling payment | 0..1 |
skyocean:contractTerms |
Object | Detailed legal terms of the trade contract | 0..1 |
skyocean:insuranceDetails |
Object | Insurance information for the commodity | 0..1 |
skyocean:paymentHistory |
Array of Objects | Record of payments made against the trade | 0..* |
skyocean:tradeNotes |
Array of Objects | Private notes and comments about the trade | 0..* |
This example shows a basic Trade Knowledge Asset with public and private sections:
{
"@context": {
"schema": "http://schema.org/",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"skyocean": "https://skyocean.io/ontology/",
"incoterms": "https://skyocean.io/ontology/terms/incoterms/",
"unit": "https://skyocean.io/ontology/terms/units/",
"status": "https://skyocean.io/ontology/terms/status/"
},
"@id": "urn:skyocean:trade:PO-12345678",
"@type": "skyocean:Trade",
"schema:identifier": "PO-12345678",
"schema:name": "Soybean Shipment June 2023",
"schema:description": "Purchase of organic soybeans from Argentina to USA",
"skyocean:buyer": {
"@id": "urn:skyocean:tradeparty:BT-5678"
},
"skyocean:seller": {
"@id": "urn:skyocean:tradeparty:ST-1234"
},
"skyocean:commodity": {
"@id": "urn:skyocean:commodity:SOY-ORG-AR-2023"
},
"skyocean:tradeDate": "2023-05-15",
"skyocean:tradingTerm": {
"@id": "incoterms:CIF"
},
"skyocean:quantity": {
"@type": "schema:QuantitativeValue",
"schema:value": 5000,
"schema:unitCode": {
"@id": "unit:MT"
}
},
"skyocean:quantityUnit": {
"@id": "unit:MT"
},
"skyocean:originLocation": {
"@type": "schema:Place",
"schema:name": "Puerto de Rosario",
"schema:address": {
"@type": "schema:PostalAddress",
"schema:addressLocality": "Rosario",
"schema:addressRegion": "Santa Fe",
"schema:addressCountry": "Argentina"
}
},
"skyocean:destinationLocation": {
"@type": "schema:Place",
"schema:name": "Port of New Orleans",
"schema:address": {
"@type": "schema:PostalAddress",
"schema:addressLocality": "New Orleans",
"schema:addressRegion": "LA",
"schema:addressCountry": "USA"
}
},
"skyocean:deliveryPeriod": {
"skyocean:startDate": "2023-06-01",
"skyocean:endDate": "2023-06-15"
},
"skyocean:logisticsProvider": {
"@id": "urn:skyocean:tradeparty:LP-9012"
},
"skyocean:inspectionAgency": {
"@id": "urn:skyocean:tradeparty:IA-3456"
},
"skyocean:documents": [
{
"@id": "urn:skyocean:document:PO-12345678-BL"
},
{
"@id": "urn:skyocean:document:PO-12345678-COO"
},
{
"@id": "urn:skyocean:document:PO-12345678-INVOICE"
}
],
"skyocean:status": {
"@id": "status:IN_TRANSIT"
}
}
{
"@context": {
"schema": "http://schema.org/",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"skyocean": "https://skyocean.io/ontology/"
},
"@id": "urn:skyocean:trade:PO-12345678#private",
"@type": "skyocean:TradePrivateData",
"skyocean:referenceId": "urn:skyocean:trade:PO-12345678",
"skyocean:unitPrice": {
"@type": "schema:MonetaryAmount",
"schema:currency": "USD",
"schema:value": 620.50
},
"skyocean:totalPrice": {
"@type": "schema:MonetaryAmount",
"schema:currency": "USD",
"schema:value": 3102500.00
},
"skyocean:paymentTerms": {
"skyocean:paymentMethod": "Letter of Credit",
"skyocean:paymentDays": 30,
"skyocean:paymentCondition": "Documents against payment"
},
"skyocean:financialInstitution": {
"@id": "urn:skyocean:tradeparty:FI-7890"
},
"skyocean:contractTerms": {
"skyocean:qualityRequirements": "Organic certification required. Moisture < 14%, Foreign material < 1%, Protein > 36%",
"skyocean:penalties": "Quality penalty of 1.5% per 1% below quality specifications",
"skyocean:arbitrationClause": "ICC arbitration in New York, USA"
},
"skyocean:insuranceDetails": {
"skyocean:insuranceProvider": "Global Trade Insurance Co.",
"skyocean:policyNumber": "GTI-12345-PO-SOY",
"skyocean:insuredAmount": 3500000.00,
"skyocean:insuredCurrency": "USD",
"skyocean:coverageType": "All Risks"
},
"skyocean:paymentHistory": [
{
"skyocean:paymentDate": "2023-05-16",
"skyocean:paymentAmount": 775625.00,
"skyocean:paymentCurrency": "USD",
"skyocean:paymentType": "Deposit",
"skyocean:paymentReference": "PMT-12345678-1"
}
],
"skyocean:tradeNotes": [
{
"skyocean:noteDate": "2023-05-17",
"skyocean:noteAuthor": "John Smith",
"skyocean:noteText": "Seller has requested accelerated payment schedule due to currency fluctuations. Discussing with finance department."
},
{
"skyocean:noteDate": "2023-05-20",
"skyocean:noteAuthor": "Sarah Johnson",
"skyocean:noteText": "Weather issues in origin region might cause slight delay. Monitoring situation."
}
]
}
Trades in the Skyocean ecosystem are stored as Knowledge Assets in the DKG network. The public part contains general information about the trade that can be discovered, while sensitive details like pricing and payment terms are stored in the private section.
All trades reference associated parties, commodities and documents through their URIs, creating a connected graph of knowledge that enables comprehensive tracking and verification across the supply chain.
The separation of public and private data allows stakeholders to discover relevant trades while maintaining confidentiality of commercially sensitive information.