[Ann] RefleX : mastering XML with XML

  • Thread starter Philippe Poulard
  • Start date
P

Philippe Poulard

I'm pleased to announce the last release of RefleX, a multi-purpose XML
engine that will allow you to write native XML programs.

http://reflex.gforge.inria.fr/
The engine runs with Java 1.4.2 and above

RefleX works like XSLT, but instead of having a single instruction set,
the system can host severals
You could read the basics here :
http://reflex.gforge.inria.fr/tutorial-basics.html#hello

====== Key features ======

Being a Java programmer, RefleX will help you in many cases !

If your Java applications are producing XML datas, you should to have a
look at XUnit, a tool that works like JUnit for XML ; you can assert
that 2 XML nodes are equals... if there are some differences the error
report will show you the path to the nodes in fault and why they differ.
Example:
http://reflex.gforge.inria.fr/xunit.html#xunitStepByStep
For using XUnit with your Java programs, you can either run your app
then run XUnit to test your data separately, or expose your application
as a runnable tag in RefleX

Browse X-operable objects : you will be able to apply XPath expressions
on non-XML objects such as a file system : for example, "//*" will
select all the files under a context directory
Consider the amount of code you had to produce if you had to write the
same in Java... say that you have to select only files, not directories,
you just have to append a predicate on the XPath expression, like this :
//*[@io:file] now consider again the amount of code you had to update ;
now make it working on http, ftp, zip and others... RefleX can help you !
Example:
http://reflex.gforge.inria.fr/tutorial-basics.html#xslt

Run XML pipelines and filters : usually, your Java program that process
SAX streams are long, hard to code, and hard to update ; this is because
SAX is a very low-level API ; with RefleX, you will be able to apply
XPath patterns on SAX streams and raw-text
Example:
http://reflex.gforge.inria.fr/tutorial-pipelinesAndFilters.html

Leverage your schemas : you will be able to express algorithmic rules
and co-occurrence constraints with the Active Schema Language, and
design a semantic data type
http://reflex.gforge.inria.fr/tutorial-schemas.html

Design macro tags : design your own libraries with XPath functions and
custom active tags ; you can supply their implementation either with a
Java class or with other tags (macros)
Example:
http://reflex.gforge.inria.fr/tutorial-fromSqlToMvc.html

XML configuration file for Java applications : usually, your Java
application will load and unmarshall an XML configuration file, and the
components instanciated from the tags will be assembled definitively ;
With RefleX you could consider another approach : let the engine do the
job for you and assemble them each time the parent component requires to
be invoked ; this way, your application as an assembly of components
would evolve dynamically. When you design an XML configuration file
where tags are mapped to components, consider that you have a
declarative language that you can mix imperative instructions
(if-then-else, for-each, etc) : your markup language will be light and
efficient

Enjoy !

====== RefleX live ======

I will talk next week about all that stuff at Extreme Markup Languages 2007
http://www.extrememarkup.com/2007/abstracts.html#t400r
See you in Montreal !

--
Cordialement,

///
(. .)
--------ooO--(_)--Ooo--------
| Philippe Poulard |
-----------------------------
http://reflex.gforge.inria.fr/
Have the RefleX !
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,226
Members
46,815
Latest member
treekmostly22

Latest Threads

Top