Oracle Database · Schema
Oracle SODA Collection
Represents a SODA document collection in Oracle Database, including its metadata configuration for key generation, content storage, versioning, and modification tracking.
CloudDatabaseEnterpriseOracleREST APISQL
Properties
| Name | Type | Description |
|---|---|---|
| name | string | Collection name, must not be 'custom-actions' or 'metadata-catalog' |
| properties | object | Collection metadata properties |
| links | array | Navigation links for the collection |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://oracle.com/schemas/database/collection.json",
"title": "Oracle SODA Collection",
"description": "Represents a SODA document collection in Oracle Database, including its metadata configuration for key generation, content storage, versioning, and modification tracking.",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Collection name, must not be 'custom-actions' or 'metadata-catalog'"
},
"properties": {
"type": "object",
"description": "Collection metadata properties",
"properties": {
"schemaName": {
"type": "string",
"description": "Oracle Database schema (user account) owning the collection"
},
"tableName": {
"type": "string",
"description": "Name of the underlying database table storing documents"
},
"keyColumn": {
"type": "object",
"description": "Configuration for the document key column",
"properties": {
"name": {
"type": "string",
"description": "Column name for the document key",
"default": "ID"
},
"sqlType": {
"type": "string",
"description": "SQL data type for the key column",
"enum": ["VARCHAR2", "NUMBER", "RAW"],
"default": "VARCHAR2"
},
"maxLength": {
"type": "integer",
"description": "Maximum length for VARCHAR2 key columns",
"default": 255
},
"assignmentMethod": {
"type": "string",
"description": "Method for generating document keys",
"enum": ["UUID", "GUID", "SEQUENCE", "CLIENT"],
"default": "UUID"
},
"sequenceName": {
"type": "string",
"description": "Name of the sequence used when assignmentMethod is SEQUENCE"
}
}
},
"contentColumn": {
"type": "object",
"description": "Configuration for the document content column",
"properties": {
"name": {
"type": "string",
"description": "Column name for document content",
"default": "JSON_DOCUMENT"
},
"sqlType": {
"type": "string",
"description": "SQL data type for content storage",
"enum": ["JSON", "BLOB", "CLOB", "VARCHAR2"],
"default": "JSON"
},
"compress": {
"type": "string",
"description": "Compression method for BLOB content",
"enum": ["NONE", "HIGH", "MEDIUM", "LOW"]
},
"cache": {
"type": "boolean",
"description": "Whether to enable LOB caching"
},
"encrypt": {
"type": "string",
"description": "Encryption algorithm for content"
},
"validation": {
"type": "string",
"description": "JSON validation mode",
"enum": ["STANDARD", "STRICT", "LAX"],
"default": "STANDARD"
},
"maxLength": {
"type": "integer",
"description": "Maximum length for VARCHAR2 content columns"
}
}
},
"versionColumn": {
"type": "object",
"description": "Configuration for the document version column",
"properties": {
"name": {
"type": "string",
"description": "Column name for document version",
"default": "VERSION"
},
"method": {
"type": "string",
"description": "Method for computing document versions",
"enum": ["UUID", "TIMESTAMP", "SHA256", "MD5", "NONE"],
"default": "UUID"
}
}
},
"lastModifiedColumn": {
"type": "object",
"description": "Configuration for the last modified timestamp column",
"properties": {
"name": {
"type": "string",
"description": "Column name for last modified timestamp",
"default": "LAST_MODIFIED"
},
"index": {
"type": "string",
"description": "Name of the index on the last modified column"
}
}
},
"creationTimeColumn": {
"type": "object",
"description": "Configuration for the creation timestamp column",
"properties": {
"name": {
"type": "string",
"description": "Column name for creation timestamp",
"default": "CREATED_ON"
}
}
},
"readOnly": {
"type": "boolean",
"description": "Whether the collection is read-only",
"default": false
},
"mediaTypeColumn": {
"type": "object",
"description": "Configuration for the media type column (non-JSON content)",
"properties": {
"name": {
"type": "string",
"description": "Column name for media type"
}
}
}
}
},
"links": {
"type": "array",
"description": "Navigation links for the collection",
"items": {
"type": "object",
"properties": {
"rel": {
"type": "string",
"description": "Link relation type"
},
"href": {
"type": "string",
"format": "uri",
"description": "Link URL"
},
"mediaType": {
"type": "string",
"description": "Media type of the linked resource"
}
}
}
}
},
"required": ["name"]
}