[oXygen-user] looking for a good XSLT IDE
George Cristian Bina
Tue May 12 15:51:43 CDT 2009
Dear Lars,
oXygen surely offers the most advanced XSLT support currently available.
It is true however that some improvements were made after that blog
comment, for instance the new Outliner for XSLT that presents
included/imported components was available in oXygen 10.1 in February
while the comment is made in January.
The 5 points mentioned in the blog are implemented in oXygen as follows:
1. oXygen has support for projects. It allows also to work with modules
in the context of an importing/including stylesheets by allowing to
configure a validation scenario where the user can specify that the
validation should be applied on a master file and not on the current
module. [We need however to use that also in the content completion to
be able to provide proposals with components defined in the including
stylesheets - I note that as a feature request]
2. The content completion support looks into included/imported
stylesheets when it presents proposals for different stylesheet
components (variables, templates, functions, etc.).
3. oXygen provides refactoring actions, for extracting parts of the code
as a named template, for extracting fragments as stylesheets and for
renaming any named component. The rename works in a user defined
context, that can be the current project but is not limited to only that.
4. oXygen supports a very large number of engines including all versions
of Saxon (6.5, 9 - Schema Aware and Basic), Xalan, the Microsoft
processors, XSLTProc, etc.
5. oXygen provides debugging support with Saxon (6.5, 9 both Schema
Aware and Basic) and Xalan.
More that that, oXygen offers also:
- Hierarchy/Dependencies view for XSLT include and import links
- Outliner presenting also included/imported components
- XSLT Input view allowing to construct XSLT code by drag and drop
from that view into the XSLT editor
- XPath content completion covering not only XSLT/XPath constructs but
also name tests if the stylesheet has an associated transformation scenario
- The possibility to define a schema for the result and offering
content completion using that
- An XSLT profiler
Now, the refactoring action that is supposed to implement a note in the
spec to create automatically B' and C' stylesheets to resolve the issue
with the duplicate indirect inclusion of A in D through B and C - this
being required only if B and C need to be used also as standalone
stylesheets is not a requested feature. If we will have people
requesting that we will surely implement it. But until then we have a
number of features that we need to add to the XSLT support that will be
very useful to many XSLT developers, to enumerate just s few of them:
- Integrated XSLT documentation support
- Integrated XSLT unit testing
- Quick fixes on some errors
Best Regards,
George
--
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
Lars Huttar wrote:
> This blog post and comment thread are not mine, but I thought they would
> interest the Oxygen developers. Maybe you have a response to the
> statements made about Oxygen.
>
> http://www.nesterovsky-bros.com/weblog/CommentView,guid,ca560933-6d05-4bbc-9bf5-d5736fb778ff.aspx#commentstart
>
> ----------------------------------------------------------------------------
>
> A good xslt IDE
>
> A simple demand nowdays - a good IDE.
>
> Almost a ten years have passed since xslt has appeared but still, we're
> not pleased with IDEs claiming xslt support. Our expectaions are not too
> high. There are things however, which must be present in such an IDE.
>
> 1. A notion of project, and possibly a group of projects. You may
> think of it as a main xslt including other xslts participationg in the
> project.
> 2. A code completion. A feature providing typing hints for language
> constructs, includes, prefixes, namespaces, functions, templates, modes,
> variables, parameters, schema elements, and other (all this should work
> in a context of the project).
> 3. A code refactoring. A means to move parts of code between (or
> inside) files and projects, rename things (functions, templates,
> parameters, variables, prefixes, namespaces, and other).
> 4. Code validation and run.
> 5. Optional debug feature.
>
> We would be grateful if someone had pointed to any such IDE.
>
> ----------------------------------------------------------------------------
>
> Thursday, January 15, 2009 3:54:42 PM UTC
> I can recommend oXygen XML Editor. IMHO it could satisfy nearly all your
> requirements, except providing namespace prefixes which sometimes works
> and sometimes does not. Altought it's written in Java it's pretty fast
> and has best code completion I have seen so far. You will have to try
> code refactoring on your own, I do not use it much.
>
> Maybe you would want to try evaluation version of IntelliJ IDEA with
> plugins XPathView + XSLT-Support and XSLT-Debugger. It's primarily Java
> IDE but with use of mentioned plugins, writing XSLT is much easies and
> "enjoyable". Best advantage of IDEA are advanced refactorings (provided
> by both IDEA and plugins) and easiness of creating new ones.
>
> I hope you will find this comment somehow useful.
>
> Josef
> Josef Pavlas
>
> ----------------------------------------------------------------------------
>
> Thursday, January 15, 2009 4:45:27 PM UTC
> Josef,
>
> Consider an example provided by xslt 2.0 spec:
>
> "...For example, if stylesheet B includes stylesheet A, stylesheet C
> includes stylesheet A, and stylesheet D includes both stylesheet B and
> stylesheet C, then A will be included indirectly by D twice. If all of
> B, C and D are used as independent stylesheets, then the error can be
> avoided by separating everything in B other than the inclusion of A into
> a separate stylesheet B' and changing B to contain just inclusions of B'
> and A, similarly for C, and then changing D to include A, B', C'."
>
>
> Unfortunately oXygen does not provide acceptable code completion and
> refactoring for such A', B', and C' modules, as it never looks defitions
> in including modules.
>
> We never tried IntelliJ IDEA, and we shall try it.
>
> Thank you for your feedback!
> Vladimir Nesterovsky
>
>
> (the rest deleted)
> _______________________________________________
> oXygen-user mailing list
>
> http://www.oxygenxml.com/mailman/listinfo/oxygen-user
More information about the oXygen-user
mailing list