= Sample Course Outline: Embedding and Extending LibXSLT = A detailed, hands-on technical introduction to embedding the LibXSLT XSLT processor in your own application and to implementing extension functions and elements for use with your embedded LibXSLT or as a plugin to xsltproc. This course suits organisations getting started with using LibXSLT in their application. By the end of the course, the participants will: * Understand how to use LibXSLT from within their program * Understand how to write extension functions for LibXSLT and `xsltproc` The course includes a number of exercises based on your documents. Duration: 1 day or 2 day, depending on requirements and time allocated for exercises == Embedding LibXSLT == * Use cases for embedding LibXSLT * Simple embedding * Reading input * Writing output * Working with XML result trees * Memory management * Handling error messages * Overriding document loading * LibXSLT security framework * Using EXSLT extensions == Extending LibXSLT == * Writing an extension function * Writing an extension element * Registering extensions * When are extensions initialised and finalised? * Maintaining state between function calls * Extensions as xsltproc plugins