v0.3.1 with Saxon fully working
This commit is contained in:
52
todo.md
Normal file
52
todo.md
Normal file
@@ -0,0 +1,52 @@
|
||||
# Roadmap: good next functions
|
||||
|
||||
Near-term useful features:
|
||||
|
||||
1. Engine UX polish
|
||||
- Show “SaxonJS loading…” when the large compiler file is first loaded.
|
||||
- Show compile time vs transform time separately.
|
||||
- Cache compiled SEF by stylesheet hash to avoid recompiling unchanged XSLT.
|
||||
2. Parameters
|
||||
- Add UI for xsl:param.
|
||||
- Support string/number/boolean parameters first.
|
||||
- Later support XPath expressions.
|
||||
3. Better diagnostics
|
||||
- Convert SaxonJS compiler/runtime errors into editor diagnostics.
|
||||
- Extract line/module info when available.
|
||||
- Jump from diagnostic to editor line.
|
||||
4. Examples / templates
|
||||
- Identity transform.
|
||||
- Rename elements.
|
||||
- Extract table.
|
||||
- Namespace cleanup.
|
||||
- Grouping example.
|
||||
- XSLT 3.0 shallow-copy example.
|
||||
5. Project files
|
||||
- Export/import a full local project JSON:
|
||||
'''XML input
|
||||
XSLT
|
||||
output
|
||||
engine
|
||||
examples/tests
|
||||
parameters'''
|
||||
- No uploads needed.
|
||||
6. Test cases inside the app
|
||||
- Multiple XML inputs per stylesheet.
|
||||
- Expected output assertions.
|
||||
- Diff expected vs actual.
|
||||
- “Run all tests” button.
|
||||
7. Diff views
|
||||
- XML input vs output.
|
||||
- Previous output vs current output.
|
||||
- Pretty XML diff.
|
||||
8. Explain mode
|
||||
- Start with static analysis:
|
||||
'''template match → output node candidates'''
|
||||
- Later add instrumentation around generated SEF or stylesheet templates.
|
||||
9. Performance
|
||||
- Web Worker for SaxonJS compile/transform.
|
||||
- Prevent UI lockups on large XML.
|
||||
- Progress indicator and cancellation if possible.
|
||||
10. Storage
|
||||
- LocalStorage for small projects.
|
||||
- IndexedDB for larger documents and histories.
|
||||
Reference in New Issue
Block a user