Skip to content

Commit e7380b3

Browse files
committed
docs: reformat notes in extensions
1 parent b537d3d commit e7380b3

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

site/docs/extensions/index.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,8 @@ message AdvancedExtension {
159159

160160
!!! note "Enhancements vs Optimizations"
161161

162-
Use **optimizations** for performance hints that don't change semantics and can be safely ignored. Use **enhancements** for semantic changes that must be understood by consumers or the plan cannot be executed correctly.
162+
* Use **optimizations** for performance hints that don't change semantics and can be safely ignored.
163+
* Use **enhancements** for semantic changes that must be understood by consumers or the plan cannot be executed correctly.
163164

164165
#### Optimizations
165166

@@ -177,9 +178,9 @@ Use **optimizations** for performance hints that don't change semantics and can
177178

178179
!!! note "Enhancement Constraints"
179180

180-
Semantic-changing extensions shouldn't change the core characteristics of the underlying relation. For example, they should *not* change the default direct output field ordering, change the number of fields output or change the behavior of physical property characteristics. If one needs to change one of these behaviors, one should define a new relation as described below.
181+
Semantic-changing extensions shouldn't change the core characteristics of the underlying relation. For example, they should *not* change the default direct output field ordering, change the number of fields output or change the behavior of physical property characteristics. If one needs to change one of these behaviors, one should define a new relation as described below.
181182

182-
#### Where AdvancedExtension Messages Can Be Used
183+
#### Where `AdvancedExtension` Messages Can Be Used
183184

184185
The `AdvancedExtension` message can be attached to various parts of a Substrait plan:
185186

@@ -214,9 +215,12 @@ These extension relations are first-class relation types in Substrait and can be
214215

215216
The third form of advanced extensions allows you to define extension data sources and destinations:
216217

217-
| Extension Type | Description | Examples |
218-
| ------------------------------ | --------------------------------------------- | ---------------------------- |
219-
| **`ReadRel.ExtensionTable`** | Define entirely new table source types | APIs, specialized formats |
220-
| **`WriteRel.ExtensionObject`** | Define entirely new write destination types | APIs, specialized formats |
221-
| **`DdlRel.ExtensionObject`** | Define entirely new DDL destination types | Catalogs, schema registries |
218+
| Extension Type | Description | Examples |
219+
| ------------------------------ | ------------------------------------ | ---------------------------- |
220+
| **`ReadRel.ExtensionTable`** | Define new table source types | APIs, specialized formats |
221+
| **`WriteRel.ExtensionObject`** | Define new write destination types | APIs, specialized formats |
222+
| **`DdlRel.ExtensionObject`** | Define new DDL destination types | Catalogs, schema registries |
222223

224+
!!! note "Consider Core Specification First"
225+
226+
Before implementing custom read/write types as extensions, consider checking with the Substrait community. If your scenario turns out to be common enough, it may be more appropriate to add it directly to the specification rather than as an extension.

0 commit comments

Comments
 (0)