CS 6795 Semantic Web Techniques 

Project 4: Mapping RuleML Transformation Rules to Standard ML 



A
transformationrule extension is in the RuleML 0.81 prerelease: http://www.dfki.unikl.de/ruleml/dtd/0.81/.
Contained here are instructive transformationrule examples: http://www.dfki.de/ruleml/exa/0.81/
. Also consider the functional language (Standard) ML, e.g. by looking at
"A Gentle Introduction to ML" (http://www.dcs.napier.ac.uk/coursenotes/sml/manual.html
). Write an XSLT translator that maps arithmetic RuleML transformation rules
over the integers to a (small) subset of Standard ML. The type declarations
in Standard ML can therefore constantly use the 'int' type. This should
handle arithmetic nestings such as RuleML's markup for +(*(X,X),*(2,X,Y),*(Y,Y)) and function definitions
such as the markup for f(X,Y) = +(*(X,X),*(2,X,Y),*(Y,Y)). Since Standard ML uses an
ASCII (not: XML) syntax, this XSLT translator maps from XML to ASCII. Test
your translator with examples inspired by the above exa/0.81/, selecting those
where integers can be used as the only argument types. Document your
translator via the selected examples and discuss how one could proceed to
further data types. 




Maintained by Bruce Spencer