Project Proposal - XSLT Extension For Schema Annotation ======================================================= INTRODUCTION ------------ The project will implement a couple of XSLT extensions that allows an XSLT stylesheet to access schema information associated with the document. This new functionality will allow nice de-coupling of the transformation logic and vocabulary-specific processing, which was previously impossible. For example, now you can write a reusable module of stylesheet that doesn't depend on any particular input document. The plan is to suppose both RELAX NG and W3C XML Schema for political correctness. This idea was insprired in Thailand by James Clark. RESOURCE NEEDED FOR THE PROJECT ------------------------------- If I can work on this full time, this will probably be 2 to 4 weeks. Since this is not considered as a high-priority task, I plan to work in between other tasks and therefore I expect somewhere between 6 to 12 weeks. Upon the completion, I plan to submit this to the CoolStuff website or XML developer connection. TECHNICAL DESIGN ---------------- The extension will work in the following way: 1. An user specifies a schema by using an extension element. This will validate the input document against the specified schema, and as a result of the validation, elements/attributes in the document are associated with their corresponding schema definitions. 2. An user will access schema information by using an extension XPath function: This function will return the annotations associated with the element/attribute passed to the function. Annotations will be returned as a node set, so you can further use XPath to access particular annotation. This project will be built on top of MSV, the target XSLT processor for these extensions will be Xalan.