SLiP - a "Sorta Like Python" shorthand for XML
SLiP is a quick, alternative syntax for creating and editing XML data by hand and if you know Python, it should also be familiar.
Example:
Benefits:
- Less typing - provides a quicker and easier means for creating or editing XML
- Easier to read - creates a pleasant layout for the data with indentation and spacing
- Benefits of XML - allow for hierarchical data, unlike tabbed or other character delimited data files
- Cheap - provides a free XML editing alternative
- Editor-agnostic and Keyboard-oriented - provide a quicker, more hacker-friendly way to create XML over point-and-click alternatives
- Works in existing editors - most Python editors (IDLE, Scintilla, etc) should accept and make working with this syntax easy
Downloads:
- SLIDE 0.2 (~2.2 MB) - a command-line PINE-like wrapper for editing XML documents with SLiP syntax via temp files in the text editor of your choosing (shown below).
Available as a Windows executable.
- SLiPpy 0.2 (~15 KB) - A Python package for SLiP, including the source for SLIDE (slide.py), a library for translating between SLiP and XML (sliplib.py),and brief documentation (aboutSLiP.htm)
Cost:
Documentation:
Articles/Mentions:
Similar Alternatives:
Status:
Version 0.2 - (April 19, 2002).
Release Goal: Stabilize most common use cases (ASCII, low-complexity XML), add initial Unicode/encodings support.
Changes:
- Initial Unicode/encodings support
- Several bug fixes (usually around mixed text/element/comment handling)
- Moved command-line conversion to two shortcut scripts, xml2slip.py and slip2xml.py, which also allow pipelineable output (ex. xml2slip input.xml > output.slp)
- Added handling for XML declarations, processing instructions, and doctype declarations
- Can handle SLiP element declarations without parentheses.
- Ability to distinguish between and output <foo></foo> and <foo/>
- SLIDE keeps track of working directory
Version 0.1 - Initial Release (April 3, 2002).
Release Goal: Get initial feedback. Let me know if you have any fixes.
Next Version:
Version 0.3 - (on hold).
Status: Started Sourceforge migration, focusing on bug triage and stabilization
Release Goal: Stabilize Unicode/encodings support, improve UI
Planned Changes:
- Incorporate better encoding detection
- Better error handling
- Cleaner SLiP outputs (no unnecessary triple quotes, etc)
- Migrate to SourceForge
Future Versions:
Version 0.?? - (???).
Possible Changes:
- Add inline DTD handling
- Cleaner SLiP outputs (no unnecessary triple quotes, etc)
- Refactor parsers into classes
- Solidify API and handoffs between API, UI, and Parsers
- Notepad-esqe UI
Credits:
- Daily Chump: an IRC bot that logs from IRC to XML via a logging-specific shorthand syntax
- py2exe: package for creating (easily!) the SLIDE executable
- Python and XML book: helpful guide to using the SAX libraries in Python
- xmldiff: an app for comparing XML data without worrying about whitespace differences. Absolutely vital for testing this thing.
- XML Internationalization and Localization book: good resource on a surprisingly lightly-documented topic. The associated website, opentag.com is also very helpful.
- All of the input and help so far. Thank you, and keep it coming.