Executable XML Present by 吳昆澤. Outline  Introduction  Simkin  Jelly  o:XML  Conclusion.

Slides:



Advertisements
Similar presentations
Other Web Application Development Technologies. PHP.
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
The eXtensible Markup Language (XML) An Applied Tutorial Kevin Thomas.
Web Applications Development Using Coldbox Platform Eddie Johnston.
Using JavaServer Pages Harry R. Erwin, PhD CIT304/CSE301.
XML Parsing Using Java APIs AIP Independence project Fall 2010.
JSP: JavaServer Pages Juan Cruz Kevin Hessels Ian Moon.
JSP Tag Extensions And Java Bean. JSP Tag Extensions Tag extensions look like HTML (or rather, XML) tags embedded in a JSP page. They have a special meaning.
28/1/2001 Seminar in Databases in the Internet Environment Introduction to J ava S erver P ages technology by Naomi Chen.
DT211/3 Internet Application Development
1 Java Server Pages Can web pages be created specially for each user? What part does Java play?
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
Platforms and tools for Web Services and Mobile Applications Introduction to C# Bent Thomsen Aalborg University 3rd and 4th of June 2004.
Python Introduction.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
Java Server Pages (JSP) Presented by: Ananth Prasad & Alex Ivanov May 10, 2001.
By: Shawn Li. OUTLINE XML Definition HTML vs. XML Advantage of XML Facts Utilization SAX Definition DOM Definition History Comparison between SAX and.
JAVA v.s. C++ Programming Language Comparison By LI LU SAMMY CHU By LI LU SAMMY CHU.
CSCI 3327 Visual Basic Chapter 1: Introduction to Visual Basic
4.1 JavaScript Introduction
CS 350 Operating Systems & Programming Languages Ethan Race Oren Rasekh Christopher Roberts Christopher Rogers Anthony Simon Benjamin Ramos.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Java for the WWW November 2012Slide Tag Libraries What are they? –Custom libraries Custom tags – see examples in following slides.
CS 355 – Programming Languages
C++ Programming. Table of Contents History What is C++? Development of C++ Standardized C++ What are the features of C++? What is Object Orientation?
C# A 1 CSC 298 Introduction to C#. C# A 2 What to expect in this class  Background: knowledge of an object oriented language of the C++, Java, … family.
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
Using JavaBeans and Custom Tags in JSP Lesson 3B / Slide 1 of 37 J2EE Web Components Pre-assessment Questions 1.The _____________ attribute of a JSP page.
Introduction to JavaServer Pages (JSP) Slides from Dr. Mark Llewellyn.
Why Java? A brief introduction to Java and its features Prepared by Mithat Konar.
Plug-in System for the Xylia Extensible XML Editor Student: Jonathan Milley Supervisor: Dr. T. S. Norvell.
Introduction to Applets CS 3505 Client Side Scripting with applets.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
Python – Part 1 Python Programming Language 1. What is Python? High-level language Interpreted – easy to test and use interactively Object-oriented Open-source.
Introduction and Features of Java. What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++
CS 3131 Introduction to Programming in Java Rich Maclin Computer Science Department.
Copyright © 2007 Addison-Wesley. All rights reserved.1-1 Reasons for Studying Concepts of Programming Languages Increased ability to express ideas Improved.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
An OO schema language for XML SOX W3C Note 30 July 1999.
Eagle: Maturation and Evolution 17th Annual Tcl Conference Joe Mistachkin.
Principles of Software Development 1 Principles Of Software Design and Development Types of language / Choosing a language.
Computer Programming 2 Why do we study Java….. Java is Simple It has none of the following: operator overloading, header files, pre- processor, pointer.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
Core Java Introduction Byju Veedu Ness Technologies httpdownload.oracle.com/javase/tutorial/getStarted/intro/definition.html.
An Introduction to JavaServer™ Pages Prepared by Nicole Swan.
IMRAN DAUD FOUNDATION UNIVERSITY RAWALPINDI CAMPUS Imran Daud FURC Web Engineering Introduction.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Boris Milašinović Faculty of Electrical Engineering and Computing University of Zagreb, Croatia 15th Workshop on "Software Engineering Education and Reverse.
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
 Before you continue you should have a basic understanding of the following:  HTML  CSS  JavaScript.
Dr. Abdullah Almutairi Spring PHP is a server scripting language, and a powerful tool for making dynamic and interactive Web pages. PHP is a widely-used,
1/18/2000STScI Software Workshop Object-oriented Design Elements of the OPUS Application Programming Interface Data Processing Team.
XML Extensible Markup Language
Programming Languages Concepts Chapter 1: Programming Languages Concepts Lecture # 4.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
PHP is a server scripting language, and a powerful tool for making dynamic and interactive Web pages. PHP is a widely-used, free, and efficient alternative.
Maven and Jelly James Strachan. Introduction Maven and Jelly are both Apache projects at Jakarta Ultimately both will be top.
CSE S. Tanimoto Java Introduction 1 Java A Programming Language for Web-based Computing.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
Java Server Pages Can web pages be created specially for each user?
Applications Active Web Documents Active Web Documents.
Introduction to JSP Liu Haibin 12/09/2018.
Programming Concepts and Languages
CMPE419 Mobile Application Development
JavaServer Faces: The Fundamentals
Eagle: Maturation and Evolution
ASP.NET Imran Rashid CTO at ManiWeber Technologies.
CMPE419 Mobile Application Development
Presentation transcript:

Executable XML Present by 吳昆澤

Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

Introduction  XML vs. functional language (eg LISP, Scheme)  XML simplifies the problems when develop a compiler: Parsing source with a give syntax. Generating program output in a target executable format.  So, why not turning XML into executable code?

Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

Simkin  Simkin is a high-level lightweight embeddable scripting language which works with Java ™ or C++ and XML.  It could revolutionize the way your system gets developed you provide the mechanism, others can decide the policy.

Example  Simkin script frame.xml  Simkin comes with a simple API to embed scripts in Java application. TextManipulation.java

Features of Simkin  Available for Java ™ or C++ and XML  Easy to embed by overriding base classes or implementing interfaces  Easy to script the syntax is simpler than JavaScript  Low runtime overhead you control the memory, no garbage collection

Features of Simkin (cont.)  Low memory footprint 50k 200k Simkin for Java is a 50k Jar file, Simkin for C++ is a 200k lib file for Visual C++  Flexible script files they can contain data as well as code  Cross platform written in standard code for Windows, Unix, Mac and more  Source code provided customization and support available customization and support

Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

Jelly  Jelly is a tool for turning XML into executable code.  Jelly is a Java and XML based scripting and processing engine.  A Jelly script is an XML document which gets parsed into a script. The script can then be ran to produce dynamic XML events which can be turn into text, XML, HTML, etc.

Jelly (cont.)  The basic idea is that XML elements can be bound to a Jelly Tag which is a Java bean that performs some function.  Jelly has quite a few built-in Tag libraries and Core Tags.Tag librariesCore Tags

Example <j:jelly xmlns:j="jelly:core “ xmlns:l="jelly:log “ xmlns:i="jelly:interaction"> <i:ask question="Enter your name:" answer="name “ default="anonymous" /> Hello ${name}, welcome to Jelly!

Jelly extensibility  One distinguishing Jelly feature is its extensibility, you can create your own Jelly Tag: Create one or more tags, by deriving from TagSupport. Create one or more tags, by deriving from TagSupport. Then create a TagLibrary class for your tags. Then create a TagLibrary class for your tags. Finally, you can use your new tag library by specifying the classname in a namespace URI. Finally, you can use your new tag library by specifying the classname in a namespace URI.

Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

o:XML  o:XML is a markup language and a fully object-oriented programming language.  o:XML vs. JSP/ASP Using a language without inherent XML support. Scripting languages used generally give little by means of object-oriented language support.  Examples Examples

Features of o:XML  Procedures, types and functions defined in plain XML  Dynamic runtime typing  Function overloading  Function polymorphism  Multiple inheritance  Intuitive language constructs  Extensible expression language

Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

Conclusion  Simkin has been designed to be easy enough for non-programmers to use, and easy for you to supply a simple API for them to write to.  Jelly is completely extendable via custom tags in a similar way to JSP custom tags.  o:XML is a complete object oriented programming language.

Reference  Simkin  Jelly box/jelly/  o:XML