An XML file. XML Parsing. Generic XML Parsers. XML Parsing. Event-based Parser. Tree-based XML Parser. Michael Li

Size: px
Start display at page:

Download "An XML file. XML Parsing. Generic XML Parsers. XML Parsing. Event-based Parser. Tree-based XML Parser. Michael Li"

Transcription

1 An XML file XML Parsing Michael Li <note> <to>jerry</to> <from>tom</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note> XML stands for EXtensible Markup Language XML was designed to store and transfer data XML tags are not predefined. You must define your own tags XML is designed to be self-descriptive An XML file represents a tree structure XML Parsing Generic XML Parsers Understand XML notation Extracting the tree from serialized XML into a format that the computer can process As the document is parsed, the data in the document becomes available to the application using the parser Many possible methods Can also perform validation and well-formedness checks Common types in use today Tree-based (DOM) Event-driven (SAX) Pull-based (Microsoft.NET) 3 4 Tree-based XML Parser Event-based Parser Deserializes the XML, and builds an in-memory representation of the XML tree Provides an API for the user to manipulate the tree Slower than event-based parsers One-size-fits-all, which can be a never-reallyfits-anywhere Low-level interface Tree-based parsers are usually built on top of an event-based parser Send messages to user s code when they discover content in the XML file Can work in either a push (event-driven) or a pull 5 6 1

2 Trees or Events Which parsing is best? Depends on the task in hand Event-based good for building your own object structures Tree-based suitable for jobs that change quickly, or have a short lifetime Traditionally, the execution of a program is under the programmer s control Execution starts at a defined entry point (e.g. main()) Continues until the program exits, executing the program line after line 7 8 The program sometimes hands control over to the OS (e.g. to read input from the keyboard) Event-driven programming operates in the opposite direction The program surrenders control to the OS The OS then sends messages to the program telling it about events that have happened Examples include mouse input, key presses etc Event-based Parsing So how does this work for XML? Using SAX as the example User registers a handler for the events with the OS The OS calls back into the program when the event occurs Parser is passed a pointer to a user-implemented object This object supports a defined interface () As the parser finds certain types of object in the serialized XML stream, it generates calls to the methods

3 Parsing This is exactly what happens in an event-based parser The parser recognizes each XML tag and calls the appropriate method on the interface An object that implements the interface will then be notified of the relevant parts of the XML document. <?xml version= 1.0?> <Document> Hello World <Bold> Goodbye Universe! </Bold> ); </Document> StartDocument(); StartElement( Document ); Characters( Hello World ); StartElement( Bold ); Charcters( Goodbye Universe! ); EndElement( Bold ); EndElement( Document ); EndDocument(); SAX SAX (Simple API for XML) defines an interface called The parser is passed a reference to an object that implements the interface The SAX parser then calls the relevant methods on that object in response to the XML document public interface public void setdocumentlocator(locator locator); public void startdocument() throws SAXException; public void enddocument() throws SAXException; public void startprefixmapping(string prefix, String uri) throws SAXException; public void endprefixmapping(string prefix) throws SAXException; public void startelement(string namespaceuri, String localname, String rawname, Attributes atts) throws SAXException; public void endelement(string namespaceuri, String localname, String rawname) throws SAXException; public void characters(char ch[], int start, int length) throws SAXException; public void ignorablewhitespace(char ch[], int start, int length) throws SAXException; public void processinginstruction(string target, String data) throws SAXException; public void skippedentity (String name) throws SAXException; public void startdocument() throws SAXException; public void enddocument() throws SAXException; No need to implement unused methods since SAX provides a default does nothing implementation Therefore inherit from DefaultHandler, not Self-explanatory Called only once when parsing starts and when it finishes respectively enddocument() can be a useful place to put code to process the deserialized data

4 public void startelement(string namespaceuri, String localname, String qname, Attributes atts); public void endelement(string namespaceuri, String localname, String qname); Attributes Each element in the document invokes these methods namespaceuri and rawname are used when dealing with multiple namespaces and can be ignored for our purposes localname contains the name of the element startelement() methods are passed a reference to an Attributes object User can obtain the value of an attribute by using the method getvalue(string attname) String date = atts.getvalue( number ); public void characters(char ch[], int start, int length); State Called whenever PCDATA is parsed Note the start parameter do not expect your data to start at ch[0] SAX does not define how it will pass the PCDATA into this function You may get called once for each character! SAX is stateless If you need to know state, then you must maintain it yourself Recall Finite State Automata A SAX example A SAX example (cont.) Sting file = "memo.xml"; // try block to create and use the parser try // create the parser as a SAX2 parser and set its handlers SAXParserFactory fact = SAXParserFactory.newInstance(); fact.setvalidating(false); fact.setnamespaceaware(true); SAXParser parser = fact.newsaxparser(); // start the parser parser.parse(file, new CCountTags()); // catch any errors from either the parser or the parser setup catch (Exception e) System.err.println(e.getMessage()); public class CCountTags extends DefaultHandler private int m_cstartelements; private int m_cendelements; public void startdocument() m_cstartelements = 0; m_cendelements = 0; public void startelement(string namespaceuri, String localname, String rawname, Attributes atts) m_cstartelements++; public void endelement(string namespaceuri, String localname, String rawname) m_cendelements++; public void enddocument() System.out.println("Found "+m_cstartelements+" start elements"); System.out.println("Found "+m_cendelements+" end elements");

5 Readings "SAX, the power API" (Benoît Marchal, developerworks, August 2001): Learn about when to use the SAX API instead of DOM, plus get an overview of commonly used SAX interfaces and detailed examples in a Java-based application with many code samples "Simplify XML programming with JDOM" (Wes Biggs and Harry Evans, developerworks, May 2001): Explore an alternate object API that is optimized for the Java language. 25 5

Databases and Information Systems 2

Databases and Information Systems 2 Databases and Information Systems Storage models for XML trees in small main memory devices Long term goals: reduce memory compression (?) still query efficiently small data structures Databases and Information

More information

XML nyelvek és alkalmazások

XML nyelvek és alkalmazások THE INTERNET,mapped on the opposite page, is a scalefree network in that XML nyelvek és alkalmazások XML kezelés Javaban dis.'~tj port,from THE INTERNET,mapped on the opposite page, is a scalefree network

More information

XML & Databases. Tutorial. 2. Parsing XML. Universität Konstanz. Database & Information Systems Group Prof. Marc H. Scholl

XML & Databases. Tutorial. 2. Parsing XML. Universität Konstanz. Database & Information Systems Group Prof. Marc H. Scholl XML & Databases Tutorial Christian Grün, Database & Information Systems Group University of, Winter 2007/08 DOM Document Object Model Idea mapping the whole XML document to main memory The XML Processor

More information

5 &2 ( )" " & 6 7 83-4 6& )9 2) " *

5 &2 ( )  & 6 7 83-4 6& )9 2)  * ! " #$%& 0 ) ( )" %+ %*,( )" -" ".. /+% ()( )" ' &2 34%* 5 &2 ( )" " & 6 7 83-4 6& )9 2) " * 1 6 5 75 6 5 75 %* %* 32 %,6,) 5 " )& 8 * 2-4;< 7)&%*2 : = 75 75 75 %* 32,) 5, 37 %,2-4;< 7)&%*2 ?7 7 (? A%

More information

Structured Data and Visualization. Structured Data. Programming Language Support. Programming Language Support. Programming Language Support

Structured Data and Visualization. Structured Data. Programming Language Support. Programming Language Support. Programming Language Support Structured Data and Visualization Structured Data Programming Language Support Schemas become Types Xml docs become Values parsers and validators A language to describe the structure of documents A language

More information

How To Write An Xml Document In Java (Java) (Java.Com) (For Free) (Programming) (Web) (Permanent) (Powerpoint) (Networking) (Html) (Procedure) (Lang

How To Write An Xml Document In Java (Java) (Java.Com) (For Free) (Programming) (Web) (Permanent) (Powerpoint) (Networking) (Html) (Procedure) (Lang XML and Java The Extensible Markup Language XML makes data portable Anders Møller & Michael I. Schwartzbach 2006 Addison-Wesley Underpinning for Web Related Computing fits well to Java, which makes code

More information

technische universität dortmund Prof. Dr. Ramin Yahyapour

technische universität dortmund Prof. Dr. Ramin Yahyapour technische universität Prof. Dr. Ramin Yahyapour IT & Medien Centrum 20. April 2010 Übungen Betreuung Florian Feldhaus, Peter Chronz Termine Mittwochs 14:15 15:00 Uhr, GB IV R.228 Donnerstags 10:15 11:00

More information

XML Parsing and Web Services Seminar Enterprise Computing

XML Parsing and Web Services Seminar Enterprise Computing Seminar Enterprise Computing Winter Term 2004/05 University of Applied Sciences, Aargau Faculty of Engineering and Technology Author: Siarhei Sirotkin Scientic Adviser: Prof. Dr. Dominik Gruntz Windisch,

More information

XML Programming in Java

XML Programming in Java XML Programming in Java Leonidas Fegaras University of Texas at Arlington Web Databases and XML L6: XML Programming in Java 1 Java APIs for XML Processing DOM: a language-neutral interface for manipulating

More information

Network Programming. CS 282 Principles of Operating Systems II Systems Programming for Android

Network Programming. CS 282 Principles of Operating Systems II Systems Programming for Android Network Programming CS 282 Principles of Operating Systems II Systems Programming for Android Android provides various mechanisms for local IPC between processes e.g., Messengers, AIDL, Binder, etc. Many

More information

Last Week. XML (extensible Markup Language) HTML Deficiencies. XML Advantages. Syntax of XML DHTML. Applets. Modifying DOM Event bubbling

Last Week. XML (extensible Markup Language) HTML Deficiencies. XML Advantages. Syntax of XML DHTML. Applets. Modifying DOM Event bubbling XML (extensible Markup Language) Nan Niu (nn@cs.toronto.edu) CSC309 -- Fall 2008 DHTML Modifying DOM Event bubbling Applets Last Week 2 HTML Deficiencies Fixed set of tags No standard way to create new

More information

Java 2 Platform, Enterprise Edition (J2EE): Enabling Technologies for EAI

Java 2 Platform, Enterprise Edition (J2EE): Enabling Technologies for EAI Java 2 Platform, Enterprise Edition (J2EE): Enabling Technologies for EAI Tony Ng, Staff Engineer Rahul Sharma, Senior Staff Engineer Sun Microsystems Inc. 1 J2EE Overview Tony Ng, Staff Engineer Sun Microsystems

More information

PHP and XML. Brian J. Stafford, Mark McIntyre and Fraser Gallop

PHP and XML. Brian J. Stafford, Mark McIntyre and Fraser Gallop What is PHP? PHP and XML Brian J. Stafford, Mark McIntyre and Fraser Gallop PHP is a server-side tool for creating dynamic web pages. PHP pages consist of both HTML and program logic. One of the advantages

More information

Tutorial for Creating Resources in Java - Client

Tutorial for Creating Resources in Java - Client Tutorial for Creating Resources in Java - Client Overview Overview 1. Preparation 2. Creation of Eclipse Plug-ins 2.1 The flight plugin 2.2 The plugin fragment for unit tests 3. Create an integration test

More information

XML in programming. Patryk Czarnik. XML and Modern Techniques of Content Management 2012/13

XML in programming. Patryk Czarnik. XML and Modern Techniques of Content Management 2012/13 XML in programming Patryk Czarnik Institute of Informatics University of Warsaw XML and Modern Techniques of Content Management 2012/13 Introduction XML in programming XML in programming what for? To

More information

Firewall Builder Architecture Overview

Firewall Builder Architecture Overview Firewall Builder Architecture Overview Vadim Zaliva Vadim Kurland Abstract This document gives brief, high level overview of existing Firewall Builder architecture.

More information

JDOM Overview. Application development with XML and Java. Application Development with XML and Java. JDOM Philosophy. JDOM and Sun

JDOM Overview. Application development with XML and Java. Application Development with XML and Java. JDOM Philosophy. JDOM and Sun JDOM Overview Application Development with XML and Java Lecture 7 XML Parsing JDOM JDOM: Java Package for easily reading and building XML documents. Created by two programmers: Brett McLaughlin and Jason

More information

by LindaMay Patterson PartnerWorld for Developers, AS/400 January 2000

by LindaMay Patterson PartnerWorld for Developers, AS/400 January 2000 Home Products Consulting Industries News About IBM by LindaMay Patterson PartnerWorld for Developers, AS/400 January 2000 Copyright IBM Corporation, 1999. All Rights Reserved. All trademarks or registered

More information

XML Filtering in Peer-to-peer Systems

XML Filtering in Peer-to-peer Systems 12/10/2003 Honguk Woo (honguk@cs.utexas.edu) Pilsung Kang (pilsungk@cs.utexas.edu) Computer Sciences University of Texas at Austin 1. Introduction 2. Publish/Subscribe Model 3. XML sharing application

More information

Data XML and XQuery A language that can combine and transform data

Data XML and XQuery A language that can combine and transform data Data XML and XQuery A language that can combine and transform data John de Longa Solutions Architect DataDirect technologies john.de.longa@datadirect.com Mobile +44 (0)7710 901501 Data integration through

More information

Amazon Glacier. Developer Guide API Version 2012-06-01

Amazon Glacier. Developer Guide API Version 2012-06-01 Amazon Glacier Developer Guide Amazon Glacier: Developer Guide Copyright 2016 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in

More information

Responders: Language Support for Interactive Applications

Responders: Language Support for Interactive Applications Responders: Language Support for Interactive Applications Brian Chin and Todd Millstein University of California, Los Angeles {naerbnic, todd@cs.ucla.edu Abstract. A variety of application domains are

More information

Java and XML parsing. EH2745 Lecture #8 Spring 2015. larsno@kth.se

Java and XML parsing. EH2745 Lecture #8 Spring 2015. larsno@kth.se Java and XML parsing EH2745 Lecture #8 Spring 2015 larsno@kth.se Lecture Outline Quick Review The XML language Parsing Files in Java Quick Review We have in the first set of Lectures covered the basics

More information

ITP 342 Mobile App Dev

ITP 342 Mobile App Dev ITP 342 Mobile App Dev REST Philosophy The 3 most important features of a RESTful server are its statelessness, uniform resource identification, and cacheability. Statelessness Every API is treated as

More information

XML WEB TECHNOLOGIES

XML WEB TECHNOLOGIES XML WEB TECHNOLOGIES Chakib Chraibi, Barry University, cchraibi@mail.barry.edu ABSTRACT The Extensible Markup Language (XML) provides a simple, extendable, well-structured, platform independent and easily

More information

ETL Systems; XML Processing in PHP

ETL Systems; XML Processing in PHP ETL Systems; XML Processing in PHP May 11, 2013 1 ETL - principles, applications, tools 1.1 ETL: Extract-Transform-Load Extract-Transform-Load (ETL) are data integration practices and tools: Extract data-mining

More information

DTD Tutorial. About the tutorial. Tutorial

DTD Tutorial. About the tutorial. Tutorial About the tutorial Tutorial Simply Easy Learning 2 About the tutorial DTD Tutorial XML Document Type Declaration commonly known as DTD is a way to describe precisely the XML language. DTDs check the validity

More information

MarkLogic Server. Java Application Developer s Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved.

MarkLogic Server. Java Application Developer s Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved. Java Application Developer s Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-3, June, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Java Application

More information

T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm

T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm Based on slides by Sasu Tarkoma and Pekka Nikander 1 of 20 Contents Short review of XML & related specs

More information

N CYCLES software solutions. XML White Paper. Where XML Fits in Enterprise Applications. May 2001

N CYCLES software solutions. XML White Paper. Where XML Fits in Enterprise Applications. May 2001 N CYCLES software solutions White Paper Where Fits in Enterprise Applications May 2001 65 Germantown Court 1616 West Gate Circle Suite 205 Nashville, TN 37027 Cordova, TN 38125 Phone 901-756-2705 Phone

More information

Processing XML with Java A Performance Benchmark

Processing XML with Java A Performance Benchmark Processing XML with Java A Performance Benchmark Bruno Oliveira 1,Vasco Santos 1 and Orlando Belo 2 1 CIICESI, School of Management and Technology, Polytechnic of Porto Felgueiras, PORTUGAL {bmo,vsantos}@estgf.ipp.pt

More information

JAVA. EXAMPLES IN A NUTSHELL. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo. Third Edition.

JAVA. EXAMPLES IN A NUTSHELL. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo. Third Edition. "( JAVA. EXAMPLES IN A NUTSHELL Third Edition David Flanagan O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Preface xi Parti. Learning Java 1. Java Basics 3 Hello

More information

AdaDoc. How to write a module for AdaDoc. August 28, 2002

AdaDoc. How to write a module for AdaDoc. August 28, 2002 AdaDoc How to write a module for AdaDoc. August 28, 2002 Contents 1 Introduction 2 1.1 What is an AdaDoc module? 2 1.2 Required knowledge.. 2 1.3 Required software 2 1.4 Modules implementation 3 2 Writing

More information

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program. Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to

More information

Mobility Information Series

Mobility Information Series SOAP vs REST RapidValue Enabling Mobility XML vs JSON Mobility Information Series Comparison between various Web Services Data Transfer Frameworks for Mobile Enabling Applications Author: Arun Chandran,

More information

GUI and Web Programming

GUI and Web Programming GUI and Web Programming CSE 403 (based on a lecture by James Fogarty) Event-based programming Sequential Programs Interacting with the user 1. Program takes control 2. Program does something 3. Program

More information

High Performance XML Data Retrieval

High Performance XML Data Retrieval High Performance XML Data Retrieval Mark V. Scardina Jinyu Wang Group Product Manager & XML Evangelist Oracle Corporation Senior Product Manager Oracle Corporation Agenda Why XPath for Data Retrieval?

More information

Lecture 5: Java Fundamentals III

Lecture 5: Java Fundamentals III Lecture 5: Java Fundamentals III School of Science and Technology The University of New England Trimester 2 2015 Lecture 5: Java Fundamentals III - Operators Reading: Finish reading Chapter 2 of the 2nd

More information

An XML Based Data Exchange Model for Power System Studies

An XML Based Data Exchange Model for Power System Studies ARI The Bulletin of the Istanbul Technical University VOLUME 54, NUMBER 2 Communicated by Sondan Durukanoğlu Feyiz An XML Based Data Exchange Model for Power System Studies Hasan Dağ Department of Electrical

More information

DataDirect XQuery Technical Overview

DataDirect XQuery Technical Overview DataDirect XQuery Technical Overview Table of Contents 1. Feature Overview... 2 2. Relational Database Support... 3 3. Performance and Scalability for Relational Data... 3 4. XML Input and Output... 4

More information

CST6445: Web Services Development with Java and XML Lesson 1 Introduction To Web Services 1995 2008 Skilltop Technology Limited. All rights reserved.

CST6445: Web Services Development with Java and XML Lesson 1 Introduction To Web Services 1995 2008 Skilltop Technology Limited. All rights reserved. CST6445: Web Services Development with Java and XML Lesson 1 Introduction To Web Services 1995 2008 Skilltop Technology Limited. All rights reserved. Opening Night Course Overview Perspective Business

More information

TagSoup: A SAX parser in Java for nasty, ugly HTML. John Cowan (cowan@ccil.org)

TagSoup: A SAX parser in Java for nasty, ugly HTML. John Cowan (cowan@ccil.org) TagSoup: A SAX parser in Java for nasty, ugly HTML John Cowan (cowan@ccil.org) Copyright This presentation is: Copyright 2004 John Cowan Licensed under the GNU General Public License ABSOLUTELY WITHOUT

More information

Change Management for XML, in XML

Change Management for XML, in XML This is a draft for a chapter in the 5 th edition of The XML Handbook, due for publication in late 2003. Authors: Martin Bryan, Robin La Fontaine Change Management for XML, in XML The benefits of change

More information

Overview of DatadiagramML

Overview of DatadiagramML Overview of DatadiagramML Microsoft Corporation March 2004 Applies to: Microsoft Office Visio 2003 Summary: This document describes the elements in the DatadiagramML Schema that are important to document

More information

CHECKING AND SIGNING XML DOCUMENTS ON JAVA SMART CARDS Challenges and Opportunities

CHECKING AND SIGNING XML DOCUMENTS ON JAVA SMART CARDS Challenges and Opportunities CHECKING AND SIGNING XML DOCUMENTS ON JAVA SMART CARDS Challenges and Opportunities Nils Gruschka, Florian Reuter and Norbert Luttenberger Christian-Albrechts-University of Kiel Abstract: Key words: One

More information

XML Processing and Web Services. Chapter 17

XML Processing and Web Services. Chapter 17 XML Processing and Web Services Chapter 17 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of http://www.funwebdev.com Web Development Objectives 1 XML Overview 2 XML Processing

More information

JMS Messages C HAPTER 3. Message Definition

JMS Messages C HAPTER 3. Message Definition C HAPTER 3 JMS Messages A ll too often when people think about messaging, their minds immediately focus on the mechanics of the process and the entity for which the process is being implemented the message

More information

Python Loops and String Manipulation

Python Loops and String Manipulation WEEK TWO Python Loops and String Manipulation Last week, we showed you some basic Python programming and gave you some intriguing problems to solve. But it is hard to do anything really exciting until

More information

Ficha técnica de curso Código: IFCAD320a

Ficha técnica de curso Código: IFCAD320a Curso de: Objetivos: LDAP Iniciación y aprendizaje de todo el entorno y filosofía al Protocolo de Acceso a Directorios Ligeros. Conocer su estructura de árbol de almacenamiento. Destinado a: Todos los

More information

13 File Output and Input

13 File Output and Input SCIENTIFIC PROGRAMMING -1 13 File Output and Input 13.1 Introduction To make programs really useful we have to be able to input and output data in large machinereadable amounts, in particular we have to

More information

Concrete uses of XML in software development and data analysis.

Concrete uses of XML in software development and data analysis. Concrete uses of XML in software development and data analysis. S. Patton LBNL, Berkeley, CA 94720, USA XML is now becoming an industry standard for data description and exchange. Despite this there are

More information

Keywords: XML, Web-based Editor

Keywords: XML, Web-based Editor A WEB-BASED XML EDITOR Rahul Shrivastava, Sherif Elfayoumy, and Sanjay Ahuja rshrivas@unf.edu, selfayou@unf.edu, sahuja@unf.edu Department of Computer and Information Sciences University of North Florida

More information

Ambientes de Desenvolvimento Avançados

Ambientes de Desenvolvimento Avançados Ambientes de Desenvolvimento Avançados http://www.dei.isep.ipp.pt/~jtavares/adav/adav.htm Aula 18 Engenharia Informática 2006/2007 José António Tavares jrt@isep.ipp.pt 1 Web services standards 2 1 Antes

More information

XBRL Processor Interstage XWand and Its Application Programs

XBRL Processor Interstage XWand and Its Application Programs XBRL Processor Interstage XWand and Its Application Programs V Toshimitsu Suzuki (Manuscript received December 1, 2003) Interstage XWand is a middleware for Extensible Business Reporting Language (XBRL)

More information

Java and XSLT. Java and XSLT. By GiantDino. Eric M. Burke Publisher: O'Reilly First Edition September 2001 ISBN: 0-596-00143-6, 528 pages

Java and XSLT. Java and XSLT. By GiantDino. Eric M. Burke Publisher: O'Reilly First Edition September 2001 ISBN: 0-596-00143-6, 528 pages Java and XSLT Eric M. Burke Publisher: O'Reilly First Edition September 2001 ISBN: 0-596-00143-6, 528 pages By GiantDino Copyright Table of Contents Index Full Description About the Author Reviews Reader

More information

The Google Web Toolkit (GWT): Declarative Layout with UiBinder Basics

The Google Web Toolkit (GWT): Declarative Layout with UiBinder Basics 2013 Marty Hall & Yaakov Chaikin The Google Web Toolkit (GWT): Declarative Layout with UiBinder Basics (GWT 2.5 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html

More information

Continuous Integration Part 2

Continuous Integration Part 2 1 Continuous Integration Part 2 This blog post is a follow up to my blog post Continuous Integration (CI), in which I described how to execute test cases in Code Tester (CT) in a CI environment. What I

More information

Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON

Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Revista Informatica Economică, nr. 4 (44)/2007 45 Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Iulian ILIE-NEMEDI, Bucharest, Romania, inemedi@ie.ase.ro Writing a custom web

More information

A TOOL FOR DATA STRUCTURE VISUALIZATION AND USER-DEFINED ALGORITHM ANIMATION

A TOOL FOR DATA STRUCTURE VISUALIZATION AND USER-DEFINED ALGORITHM ANIMATION A TOOL FOR DATA STRUCTURE VISUALIZATION AND USER-DEFINED ALGORITHM ANIMATION Tao Chen 1, Tarek Sobh 2 Abstract -- In this paper, a software application that features the visualization of commonly used

More information

How To Use X Query For Data Collection

How To Use X Query For Data Collection TECHNICAL PAPER BUILDING XQUERY BASED WEB SERVICE AGGREGATION AND REPORTING APPLICATIONS TABLE OF CONTENTS Introduction... 1 Scenario... 1 Writing the solution in XQuery... 3 Achieving the result... 6

More information

First Java Programs. V. Paúl Pauca. CSC 111D Fall, 2015. Department of Computer Science Wake Forest University. Introduction to Computer Science

First Java Programs. V. Paúl Pauca. CSC 111D Fall, 2015. Department of Computer Science Wake Forest University. Introduction to Computer Science First Java Programs V. Paúl Pauca Department of Computer Science Wake Forest University CSC 111D Fall, 2015 Hello World revisited / 8/23/15 The f i r s t o b l i g a t o r y Java program @author Paul Pauca

More information

Extracting data from XML. Wednesday DTL

Extracting data from XML. Wednesday DTL Extracting data from XML Wednesday DTL Parsing - XML package 2 basic models - DOM & SAX Document Object Model (DOM) Tree stored internally as C, or as regular R objects Use XPath to query nodes of interest,

More information

Performance Tips for DataDirect XQuery 2.0

Performance Tips for DataDirect XQuery 2.0 Performance Tips for DataDirect XQuery 2.0 Table of Contents Introduction... 1 Preparing Queries... 1 Query Pooling... 2 Querying Large XML Files... 2 Retrieving Query Results... 3 Avoiding Compensation

More information

Syllabus for CS 134 Java Programming

Syllabus for CS 134 Java Programming - Java Programming Syllabus Page 1 Syllabus for CS 134 Java Programming Computer Science Course Catalog 2000-2001: This course is an introduction to objectoriented programming using the Java language.

More information

Managing large sound databases using Mpeg7

Managing large sound databases using Mpeg7 Max Jacob 1 1 Institut de Recherche et Coordination Acoustique/Musique (IRCAM), place Igor Stravinsky 1, 75003, Paris, France Correspondence should be addressed to Max Jacob (max.jacob@ircam.fr) ABSTRACT

More information

UNIVERSITY OF WATERLOO Software Engineering. Analysis of Different High-Level Interface Options for the Automation Messaging Tool

UNIVERSITY OF WATERLOO Software Engineering. Analysis of Different High-Level Interface Options for the Automation Messaging Tool UNIVERSITY OF WATERLOO Software Engineering Analysis of Different High-Level Interface Options for the Automation Messaging Tool Deloitte Inc. Toronto, ON M5K 1B9 Prepared By Matthew Stephan Student ID:

More information

Chapter 3: XML Namespaces

Chapter 3: XML Namespaces 3. XML Namespaces 3-1 Chapter 3: XML Namespaces References: Tim Bray, Dave Hollander, Andrew Layman: Namespaces in XML. W3C Recommendation, World Wide Web Consortium, Jan 14, 1999. [http://www.w3.org/tr/1999/rec-xml-names-19990114],

More information

ISM/ISC Middleware Module

ISM/ISC Middleware Module ISM/ISC Middleware Module Lecture 14: Web Services and Service Oriented Architecture Dr Geoff Sharman Visiting Professor in Computer Science Birkbeck College Geoff Sharman Sept 07 Lecture 14 Aims to: Introduce

More information

Languages for Data Integration of Semi- Structured Data II XML Schema, Dom/SAX. Recuperación de Información 2007 Lecture 3.

Languages for Data Integration of Semi- Structured Data II XML Schema, Dom/SAX. Recuperación de Información 2007 Lecture 3. Languages for Data Integration of Semi- Structured Data II XML Schema, Dom/SAX Recuperación de Información 2007 Lecture 3. Overview XML-schema, a powerful alternative to DTDs XML APIs: DOM, a data-object

More information

10CS73:Web Programming

10CS73:Web Programming 10CS73:Web Programming Question Bank Fundamentals of Web: 1.What is WWW? 2. What are domain names? Explain domain name conversion with diagram 3.What are the difference between web browser and web server

More information

Voice Mail User s Guide (FACILITY NOT AVAILABLE IN RESIDENCES)

Voice Mail User s Guide (FACILITY NOT AVAILABLE IN RESIDENCES) SECTION ONE - INTRODUCTION...2 SECTION TWO - GETTING STARTED...2 2.1 Setting up Your Mailbox...2 2.1.1 New Mailbox...2 2.2 Getting Voice Mail to Take Your Calls...3 2.3 Listen to the Messages...3 2.4 Next

More information

Building a Multi-Threaded Web Server

Building a Multi-Threaded Web Server Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous

More information

Web Services Technologies

Web Services Technologies Web Services Technologies XML and SOAP WSDL and UDDI Version 16 1 Web Services Technologies WSTech-2 A collection of XML technology standards that work together to provide Web Services capabilities We

More information

Pre-authentication XXE vulnerability in the Services Drupal module

Pre-authentication XXE vulnerability in the Services Drupal module Pre-authentication XXE vulnerability in the Services Drupal module Security advisory 24/04/2015 Renaud Dubourguais www.synacktiv.com 14 rue Mademoiselle 75015 Paris 1. Vulnerability description 1.1. The

More information

Creating a Web Service using IBM Rational HATS. For IBM System i (5250) Creating a Web Service using HATS 1

Creating a Web Service using IBM Rational HATS. For IBM System i (5250) Creating a Web Service using HATS 1 Creating a Web Service using IBM Rational HATS For IBM System i (5250) Creating a Web Service using HATS 1 Lab instructions This lab teaches you how to use IBM Rational HATS to create a Web service that

More information

Standard Recommended Practice extensible Markup Language (XML) for the Interchange of Document Images and Related Metadata

Standard Recommended Practice extensible Markup Language (XML) for the Interchange of Document Images and Related Metadata Standard for Information and Image Management Standard Recommended Practice extensible Markup Language (XML) for the Interchange of Document Images and Related Metadata Association for Information and

More information

Understanding In and Out of XAML in WPF

Understanding In and Out of XAML in WPF Understanding In and Out of XAML in WPF 1. What is XAML? Extensible Application Markup Language and pronounced zammel is a markup language used to instantiate.net objects. Although XAML is a technology

More information

11.1 THE WORLD WIDE WEB

11.1 THE WORLD WIDE WEB 648 DISTRIBUTED DOCUMENT-BASED SYSTEMS CHAP. 11 11.1 THE WORLD WIDE WEB The World Wide Web (WWW) can be viewed as a huge distributed system consisting of millions of clients and servers for accessing linked

More information

Scanner. It takes input and splits it into a sequence of tokens. A token is a group of characters which form some unit.

Scanner. It takes input and splits it into a sequence of tokens. A token is a group of characters which form some unit. Scanner The Scanner class is intended to be used for input. It takes input and splits it into a sequence of tokens. A token is a group of characters which form some unit. For example, suppose the input

More information

XML is an overwhelmingly popular data exchange format, because it s human-readable and easily digested by software.

XML is an overwhelmingly popular data exchange format, because it s human-readable and easily digested by software. CS107 Handout 37 Spring 2008 May 30, 2008 Python: XML, Sockets, Servers XML is an overwhelmingly popular data exchange format, because it s human-readable and easily digested by software. Python has excellent

More information

Jonathan Worthington Scarborough Linux User Group

Jonathan Worthington Scarborough Linux User Group Jonathan Worthington Scarborough Linux User Group Introduction What does a Virtual Machine do? Hides away the details of the hardware platform and operating system. Defines a common set of instructions.

More information

Specific Simple Network Management Tools

Specific Simple Network Management Tools Specific Simple Network Management Tools Jürgen Schönwälder University of Osnabrück Albrechtstr. 28 49069 Osnabrück, Germany Tel.: +49 541 969 2483 Email: Web:

More information

Open XML Court Interface (OXCI) Architecture Proposal

Open XML Court Interface (OXCI) Architecture Proposal Document version: 1.0 Author: Richard Himes Abstract Open XML Court Interface (OXCI) Architecture Proposal This document is a draft proposal for an approach to the design of the Open XML Court Interface

More information

2013 Ruby on Rails Exploits. CS 558 Allan Wirth

2013 Ruby on Rails Exploits. CS 558 Allan Wirth 2013 Ruby on Rails Exploits CS 558 Allan Wirth Background: Ruby on Rails Ruby: Dynamic general purpose scripting language similar to Python Ruby on Rails: Popular Web app framework using Ruby Designed

More information

MAX 2006 Beyond Boundaries

MAX 2006 Beyond Boundaries MAX 2006 Beyond Boundaries Matthew Boles Adobe Customer Training Technical Lead RI101H: Your First RIA with Flex 2 October 24-26, 2006 1 What You Will Learn Functionality of the Flex product family The

More information

Web Services for Management Perl Library VMware ESX Server 3.5, VMware ESX Server 3i version 3.5, and VMware VirtualCenter 2.5

Web Services for Management Perl Library VMware ESX Server 3.5, VMware ESX Server 3i version 3.5, and VMware VirtualCenter 2.5 Technical Note Web Services for Management Perl Library VMware ESX Server 3.5, VMware ESX Server 3i version 3.5, and VMware VirtualCenter 2.5 In the VMware Infrastructure (VI) Perl Toolkit 1.5, VMware

More information

NASA Workflow Tool. User Guide. September 29, 2010

NASA Workflow Tool. User Guide. September 29, 2010 NASA Workflow Tool User Guide September 29, 2010 NASA Workflow Tool User Guide 1. Overview 2. Getting Started Preparing the Environment 3. Using the NED Client Common Terminology Workflow Configuration

More information

LabVIEW Internet Toolkit User Guide

LabVIEW Internet Toolkit User Guide LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,

More information

XML Serialization in.net Venkat Subramaniam venkats@durasoftcorp.com http://www.durasoftcorp.com

XML Serialization in.net Venkat Subramaniam venkats@durasoftcorp.com http://www.durasoftcorp.com XML Serialization in.net Venkat Subramaniam venkats@durasoftcorp.com http://www.durasoftcorp.com Abstract XML Serialization in.net provides ease of development, convenience and efficiency. This article

More information

A MEDIATION LAYER FOR HETEROGENEOUS XML SCHEMAS

A MEDIATION LAYER FOR HETEROGENEOUS XML SCHEMAS A MEDIATION LAYER FOR HETEROGENEOUS XML SCHEMAS Abdelsalam Almarimi 1, Jaroslav Pokorny 2 Abstract This paper describes an approach for mediation of heterogeneous XML schemas. Such an approach is proposed

More information

White Paper. Nokia Web Services Framework for Devices a Service-oriented Architecture

White Paper. Nokia Web Services Framework for Devices a Service-oriented Architecture Nokia eb ervices Framework for Devices a ervice-oriented Architecture Contents Abstract Abstract 2 Introduction 3 hat is a service-oriented architecture, and why is it good? 3 ervices in the mobile environment

More information

Populating Your Domino Directory (Or ANY Domino Database) With Tivoli Directory Integrator. Marie Scott Thomas Duffbert Duff

Populating Your Domino Directory (Or ANY Domino Database) With Tivoli Directory Integrator. Marie Scott Thomas Duffbert Duff Populating Your Domino Directory (Or ANY Domino Database) With Tivoli Directory Integrator Marie Scott Thomas Duffbert Duff Agenda Introduction to TDI architecture/concepts Discuss TDI entitlement Examples

More information

Using Files as Input/Output in Java 5.0 Applications

Using Files as Input/Output in Java 5.0 Applications Using Files as Input/Output in Java 5.0 Applications The goal of this module is to present enough information about files to allow you to write applications in Java that fetch their input from a file instead

More information

Tail-f White Paper. Configuration Management Simplified. Executive summary. Why NETCONF and YANG?

Tail-f White Paper. Configuration Management Simplified. Executive summary. Why NETCONF and YANG? Configuration Management Simplified Executive summary The IETF has recently standardized the NETCONF configuration management protocol and is currently in the process of standardizing a NETCONF-oriented

More information

XML in software development

XML in software development XML in software development Technical overview Lars Marius Garshol, development manager Ontopia, larsga@ontopia.net 2003 Ontopia AS 1 Who speaks? Lars Marius Garshol Development manager at Ontopia, and

More information

HP Unified Functional Testing

HP Unified Functional Testing HP Unified Functional Testing Software Version: 11.50 Enter the operating system(s), e.g. Windows API Testing Tutorial Document Release Date: December 2012 Software Release Date: December 2012 Legal Notices

More information

PharmaSUG 2015 - Paper QT26

PharmaSUG 2015 - Paper QT26 PharmaSUG 2015 - Paper QT26 Keyboard Macros - The most magical tool you may have never heard of - You will never program the same again (It's that amazing!) Steven Black, Agility-Clinical Inc., Carlsbad,

More information

Base Conversion written by Cathy Saxton

Base Conversion written by Cathy Saxton Base Conversion written by Cathy Saxton 1. Base 10 In base 10, the digits, from right to left, specify the 1 s, 10 s, 100 s, 1000 s, etc. These are powers of 10 (10 x ): 10 0 = 1, 10 1 = 10, 10 2 = 100,

More information

Exchanger XML Editor - Canonicalization and XML Digital Signatures

Exchanger XML Editor - Canonicalization and XML Digital Signatures Exchanger XML Editor - Canonicalization and XML Digital Signatures Copyright 2005 Cladonia Ltd Table of Contents XML Canonicalization... 2 Inclusive Canonicalization... 2 Inclusive Canonicalization Example...

More information

XML: extensible Markup Language. Anabel Fraga

XML: extensible Markup Language. Anabel Fraga XML: extensible Markup Language Anabel Fraga Table of Contents Historic Introduction XML vs. HTML XML Characteristics HTML Document XML Document XML General Rules Well Formed and Valid Documents Elements

More information