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

Size: px
Start display at page:

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

Transcription

1 XML & Databases Tutorial Christian Grün, Database & Information Systems Group University of, Winter 2007/08

2 DOM Document Object Model Idea mapping the whole XML document to main memory The XML Processor parses the XML document constructs the document tree in main memory Your Application explores arbitrary document nodes bla! creates, changes and removes elements <B> <A> <XML> <B> + blabla <A> <XML><A><B>bla!</B><B>blabla</B></A></XML> Seite 2

3 SAX Serial Access Parser Idea serial document parsing The XML Parser sequentially parses the document input sends events whenever XML snippets are found Your Application registers methods which are called by the parser processes the relevant tokens Start Parsing start <XML> start <A> start <B> text bla! end </B> start <B> text blabla end </B> end </A> end <XML> <XML><A><B>bla!</B><B>blabla</B></A></XML> Seite 3

4 DOM vs SAX vs DOM Which one is better? depends on your actual application needs SAX + fast access to document nodes, real-time parsing unidirectional (no backward parsing, limited tests on well-formedness) no document manipulation DOM + complete document model memory overhead (normally 6 8 times bigger than source document) no processing possible before document is completely read Seite 4

5 Java & DOM JAVA Architecture since JDK 1.4: DOM & SAX are included in Java distribution architecture still allows different implementations: W3C s DOM specifications are defined as interfaces in org.w3c.dom helper classes are defined in javax.xml.parsers (JAXP Java API for XML Proc.) Application JAXP java.xml.parsers DOM Spec s org.w3c.dom DOM Implementations Seite 5

6 Java & DOM Example Parsing & Dumping an XML File import javax.xml.parsers.*; import org.w3c.dom.*; class XMLTester { XMLTester() { try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder docbuilder = factory.newdocumentbuilder(); Document doc = docbuilder.parse("input.xml"); System.out.println(doc); catch(exception e) { e.printstacktrace(); Seite 6

7 Java & DOM Data Structure Nodes Node is the primary DOM data type for all node types: Document, Element, Text, Attribute Nodes,... the node type can be determined with (surprise ) getnodetype() a Node instance offers numerous methods to explore the tree: getchildren(), getattributes(), node types are explained in more detail in the Java docs NodeList NodeList objects are simple lists. They contain the following methods: getlength() returns the number of stored nodes the method item(int i) returns the specified node Seite 7

8 Java & DOM Example Reversing Document Nodes public void reverse(document doc) { Stack<Node> stack = new Stack<Node>(); Element root = doc.getdocumentelement(); NodeList elements = root.getchildnodes(); while(elements.getlength() > 0) { elementstack.push(elements.item(0)); root.removechild(elements.item(0)); while(stack.size() > 0) { root.appendchild(stack.pop()); Seite 8

9 Java & SAX JAVA Architecture does not follow W3C specifications extra package org.xml.sax same helper classes as before: package javax.xml.parsers Instantiation similar to DOM: import javax.xml.parsers.*; import org.xml.sax.*;... SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser parser = factory.newsaxparser(); XMLReader reader = parser.getxmlreader(); reader.parse("input.xml");... Seite 9

10 Java & SAX Events Callback Events the code of the previous slide works correctly but we get no results reason: SAX sends callback events, but we didn't get informed callbacks are realized as Interfaces: ContentHandler, ErrorHandler,... To register implement callbacks in your class: class... implements XYZHandler register them in the XMLReader: reader.setxyzhandler(this); To get callbacks override the available callback functions: startelement(), endelement(),... Seite 10

11 Java & SAX Events Events Handlers four different event handlers exist: ContentHandler, ErrorHandler, DTDHandler, EntityResolver disadvantage of interfaces: all methods have to be implemented the DefaultHandler class provides an empty implementation of all SAX handlers. Error Handler functions for severity levels, defined in the XML specification: warning() dependent on the parser implementation error() errors are found, but parsing is continued fatalerror() parsing is interrupted Seite 11

12 Java & SAX Content Handler Start of a Tag startelement(string URI, String ln, String qname, Attributes ats) qname is the simple tag name ( quick name ) ats contains the list of attributes End of a Tag endelement(string URI, String ln, String qname) Element Content characters(char[] chars, int start, int end) char array with offset to first and last character performance issue function may be called several times for a single content content must be manually merged Seite 12

13 import javax.xml.parsers.*; import org.xml.sax.*; import org.xml.sax.helpers.*; class XMLContentParser extends DefaultHandler { public static void main(string[] args) throws Exception { new XMLContentParser(); XMLContentParser() throws Exception { SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser parser = factory.newsaxparser(); XMLReader reader = parser.getxmlreader(); reader.setcontenthandler(this); reader.parse("input.xml"); public void startelement(string uri, String ln, String qname, Attributes atts) { System.out.println(qName); Seite 13

14 Java & StAX JAVA Architecture StAX (Streaming API for XML) is included since JDK 1.6 Pull-API: document elements are actively requested from the parser: XMLInputFactory factory = XMLInputFactory.newInstance(); XMLStreamReader parser = factory.createxmlstreamreader(new FileReader("input.xml")); while(parser.hasnext()) { int code = parser.next(); if(code == XMLStreamConstants.START_ELEMENT) { System.out.println("Tag: " + parser.getlocalname());... Seite 14

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Design Patterns in Parsing

Design Patterns in Parsing Abstract Axel T. Schreiner Department of Computer Science Rochester Institute of Technology 102 Lomb Memorial Drive Rochester NY 14623-5608 USA ats@cs.rit.edu Design Patterns in Parsing James E. Heliotis

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

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

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

Database & Information Systems Group Prof. Marc H. Scholl. XML & Databases. Tutorial. 11. SQL Compilation, XPath Symmetries

Database & Information Systems Group Prof. Marc H. Scholl. XML & Databases. Tutorial. 11. SQL Compilation, XPath Symmetries XML & Databases Tutorial 11. SQL Compilation, XPath Symmetries Christian Grün, Database & Information Systems Group University of, Winter 2005/06 SQL Compilation Relational Encoding: the table representation

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

Pushing XML Main Memory Databases to their Limits

Pushing XML Main Memory Databases to their Limits Pushing XML Main Memory Databases to their Limits Christian Grün Database & Information Systems Group University of Konstanz, Germany christian.gruen@uni-konstanz.de The we distribution of XML documents

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

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

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

Smooks Dev Tools Reference Guide. Version: 1.1.0.GA

Smooks Dev Tools Reference Guide. Version: 1.1.0.GA Smooks Dev Tools Reference Guide Version: 1.1.0.GA Smooks Dev Tools Reference Guide 1. Introduction... 1 1.1. Key Features of Smooks Tools... 1 1.2. What is Smooks?... 1 1.3. What is Smooks Tools?... 2

More information

Abstract Business Process Monitoring

Abstract Business Process Monitoring Institut für Architektur von Anwendungssystemen (IAAS) Universität Stuttgart Universitätsstraße 38 D - 70569 Stuttgart Studienarbeit Nr. 2316 Abstract Business Process Monitoring Sumadi Lie Studiengang:

More information

Java EE Web Development Course Program

Java EE Web Development Course Program Java EE Web Development Course Program Part I Introduction to Programming 1. Introduction to programming. Compilers, interpreters, virtual machines. Primitive types, variables, basic operators, expressions,

More information

AVRO - SERIALIZATION

AVRO - SERIALIZATION http://www.tutorialspoint.com/avro/avro_serialization.htm AVRO - SERIALIZATION Copyright tutorialspoint.com What is Serialization? Serialization is the process of translating data structures or objects

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

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

02 B The Java Virtual Machine

02 B The Java Virtual Machine 02 B The Java Virtual Machine CS1102S: Data Structures and Algorithms Martin Henz January 22, 2010 Generated on Friday 22 nd January, 2010, 09:46 CS1102S: Data Structures and Algorithms 02 B The Java Virtual

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

Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program

Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program Free Java textbook available online "Thinking in Java" by Bruce Eckel, 4th edition, 2006, ISBN 0131872486, Pearson Education Introduction to the Java programming language CS 4354 Summer II 2015 The third

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

Extending XSLT with Java and C#

Extending XSLT with Java and C# Extending XSLT with Java and C# The world is not perfect. If it were, all data you have to process would be in XML and the only transformation language you would have to learn would XSLT. Because the world

More information

Install Java Development Kit (JDK) 1.8 http://www.oracle.com/technetwork/java/javase/downloads/index.html

Install Java Development Kit (JDK) 1.8 http://www.oracle.com/technetwork/java/javase/downloads/index.html CS 259: Data Structures with Java Hello World with the IntelliJ IDE Instructor: Joel Castellanos e-mail: joel.unm.edu Web: http://cs.unm.edu/~joel/ Office: Farris Engineering Center 319 8/19/2015 Install

More information

ProfBuilder: A Package for Rapidly Building Java Execution Profilers Brian F. Cooper, Han B. Lee, and Benjamin G. Zorn

ProfBuilder: A Package for Rapidly Building Java Execution Profilers Brian F. Cooper, Han B. Lee, and Benjamin G. Zorn ProfBuilder: A Package for Rapidly Building Java Execution Profilers Brian F. Cooper, Han B. Lee, and Benjamin G. Zorn Department of Computer Science Campus Box 430 University of Colorado Boulder, CO 80309-0430

More information

Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program

Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program Free Java textbook available online "Thinking in Java" by Bruce Eckel, 4th edition, 2006, ISBN 0131872486, Pearson Education Introduction to the Java programming language CS 4354 Summer II 2014 Jill Seaman

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

JAVA r VOLUME II-ADVANCED FEATURES. e^i v it;

JAVA r VOLUME II-ADVANCED FEATURES. e^i v it; ..ui. : ' :>' JAVA r VOLUME II-ADVANCED FEATURES EIGHTH EDITION 'r.", -*U'.- I' -J L."'.!'.;._ ii-.ni CAY S. HORSTMANN GARY CORNELL It.. 1 rlli!>*-

More information

API for java.util.iterator. ! hasnext() Are there more items in the list? ! next() Return the next item in the list.

API for java.util.iterator. ! hasnext() Are there more items in the list? ! next() Return the next item in the list. Sequences and Urns 2.7 Lists and Iterators Sequence. Ordered collection of items. Key operations. Insert an item, iterate over the items. Design challenge. Support iteration by client, without revealing

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 IN A NUTSHELL O'REILLY. David Flanagan. Fifth Edition. Beijing Cambridge Farnham Köln Sebastopol Tokyo

JAVA IN A NUTSHELL O'REILLY. David Flanagan. Fifth Edition. Beijing Cambridge Farnham Köln Sebastopol Tokyo JAVA 1i IN A NUTSHELL Fifth Edition David Flanagan O'REILLY Beijing Cambridge Farnham Köln Sebastopol Tokyo Table of Contents Preface xvii Part 1. Introducing Java 1. Introduction 1 What 1s Java? 1 The

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 in Programming 2, Web services

XML in Programming 2, Web services XML in Programming 2, Web services Patryk Czarnik XML and Applications 2013/2014 Lecture 5 4.11.2013 Features of JAXP 3 models of XML documents in Java: DOM, SAX, StAX Formally JAXB is a separate specification

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

Scoping (Readings 7.1,7.4,7.6) Parameter passing methods (7.5) Building symbol tables (7.6)

Scoping (Readings 7.1,7.4,7.6) Parameter passing methods (7.5) Building symbol tables (7.6) Semantic Analysis Scoping (Readings 7.1,7.4,7.6) Static Dynamic Parameter passing methods (7.5) Building symbol tables (7.6) How to use them to find multiply-declared and undeclared variables Type checking

More information

C Compiler Targeting the Java Virtual Machine

C Compiler Targeting the Java Virtual Machine C Compiler Targeting the Java Virtual Machine Jack Pien Senior Honors Thesis (Advisor: Javed A. Aslam) Dartmouth College Computer Science Technical Report PCS-TR98-334 May 30, 1998 Abstract One of the

More information

Logging in Java Applications

Logging in Java Applications Logging in Java Applications Logging provides a way to capture information about the operation of an application. Once captured, the information can be used for many purposes, but it is particularly useful

More information

Password-based authentication

Password-based authentication Lecture topics Authentication and authorization for EJBs Password-based authentication The most popular authentication technology Storing passwords is a problem On the server machines Could encrypt them,

More information

XML Processing with Java

XML Processing with Java XML Processing with Java Chapter Topics in This Chapter Representing an entire XML document using the Document Object Model (DOM) Level 2 Using DOM to display the outline of an XML document in a JTree

More information

LINKED DATA STRUCTURES

LINKED DATA STRUCTURES LINKED DATA STRUCTURES 1 Linked Lists A linked list is a structure in which objects refer to the same kind of object, and where: the objects, called nodes, are linked in a linear sequence. we keep a reference

More information

Integrating XACML into JAX-WS and WSIT

Integrating XACML into JAX-WS and WSIT Integrating XACML into JAX-WS and WSIT Prof. Dr. Eric Dubuis Berner Fachhochschule Biel May 25, 2012 Overview Problem and Motivation Enforcing the Access Policy JAX-WS Handler Framework WSIT Validators

More information

Masters programmes in Computer Science and Information Systems. Object-Oriented Design and Programming. Sample module entry test xxth December 2013

Masters programmes in Computer Science and Information Systems. Object-Oriented Design and Programming. Sample module entry test xxth December 2013 Masters programmes in Computer Science and Information Systems Object-Oriented Design and Programming Sample module entry test xxth December 2013 This sample paper has more questions than the real paper

More information

Software Construction

Software Construction Software Construction Documentation and Logging Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Learning Target You can use Mock Objects

More information

Serializing Data with Protocol Buffers. Vinicius Vielmo Cogo Smalltalks, DI, FC/UL. February 12, 2014.

Serializing Data with Protocol Buffers. Vinicius Vielmo Cogo Smalltalks, DI, FC/UL. February 12, 2014. Serializing Data with Protocol Buffers Vinicius Vielmo Cogo Smalltalks, DI, FC/UL. February 12, 2014. Problem statement App2 App1 Storage 2 / 19 Problem statement App2 App1 Correct object Efficient (time

More information

I. INTRODUCTION. International Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 2, Mar-Apr 2015

I. INTRODUCTION. International Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 2, Mar-Apr 2015 RESEARCH ARTICLE An Exception Monitoring Using Java Jyoti Kumari, Sanjula Singh, Ankur Saxena Amity University Sector 125 Noida Uttar Pradesh India OPEN ACCESS ABSTRACT Many programmers do not check for

More information

Input Output. 9.1 Why an IO Module is Needed? Chapter 9

Input Output. 9.1 Why an IO Module is Needed? Chapter 9 Chapter 9 Input Output In general most of the finite element applications have to communicate with pre and post processors,except in some special cases in which the application generates its own input.

More information

What is in a Distributed Object System? Distributed Object Systems 5 XML-RPC / SOAP. Examples. Problems. HTTP protocol. Evolution

What is in a Distributed Object System? Distributed Object Systems 5 XML-RPC / SOAP. Examples. Problems. HTTP protocol. Evolution Distributed Object Systems 5 XML-RPC / SOAP Piet van Oostrum What is in a Distributed Object System? Wire (transport) protocol Marshalling standard Language bindings Middle-ware (ORB) Interface specification

More information

Android Programming. Android App. Høgskolen i Telemark Telemark University College. Cuong Nguyen, 2013.06.19

Android Programming. Android App. Høgskolen i Telemark Telemark University College. Cuong Nguyen, 2013.06.19 Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Android Programming Cuong Nguyen, 2013.06.19 Android App Faculty of Technology,

More information

Chulalongkorn University International School of Engineering Department of Computer Engineering 2140105 Computer Programming Lab.

Chulalongkorn University International School of Engineering Department of Computer Engineering 2140105 Computer Programming Lab. Chulalongkorn University Name International School of Engineering Student ID Department of Computer Engineering Station No. 2140105 Computer Programming Lab. Date Lab 2 Using Java API documents, command

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

WEB APPLICATION DEVELOPMENT. UNIT I J2EE Platform 9

WEB APPLICATION DEVELOPMENT. UNIT I J2EE Platform 9 UNIT I J2EE Platform 9 Introduction - Enterprise Architecture Styles - J2EE Architecture - Containers - J2EE Technologies - Developing J2EE Applications - Naming and directory services - Using JNDI - JNDI

More information

Semester Thesis Traffic Monitoring in Sensor Networks

Semester Thesis Traffic Monitoring in Sensor Networks Semester Thesis Traffic Monitoring in Sensor Networks Raphael Schmid Departments of Computer Science and Information Technology and Electrical Engineering, ETH Zurich Summer Term 2006 Supervisors: Nicolas

More information

Anexo XI - Código para Processar PDML e Gerar Script SQL

Anexo XI - Código para Processar PDML e Gerar Script SQL Anexo XI - Código para Processar PDML e Gerar Script SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 import java.io.file;

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

Format string exploitation on windows Using Immunity Debugger / Python. By Abysssec Inc WwW.Abysssec.Com

Format string exploitation on windows Using Immunity Debugger / Python. By Abysssec Inc WwW.Abysssec.Com Format string exploitation on windows Using Immunity Debugger / Python By Abysssec Inc WwW.Abysssec.Com For real beneficiary this post you should have few assembly knowledge and you should know about classic

More information

Production time profiling On-Demand with Java Flight Recorder

Production time profiling On-Demand with Java Flight Recorder Production time profiling On-Demand with Java Flight Recorder Using Java Mission Control & Java Flight Recorder Klara Ward Principal Software Developer Java Platform Group, Oracle Copyright 2015, Oracle

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

BEA WebLogic Server. Programming WebLogic XML

BEA WebLogic Server. Programming WebLogic XML BEA WebLogic Server Programming WebLogic XML BEA WebLogic Server 6.0 Document Date: May 15, 2001 Copyright Copyright 2001 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This software and

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

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

Compiler I: Syntax Analysis Human Thought

Compiler I: Syntax Analysis Human Thought Course map Compiler I: Syntax Analysis Human Thought Abstract design Chapters 9, 12 H.L. Language & Operating Sys. Compiler Chapters 10-11 Virtual Machine Software hierarchy Translator Chapters 7-8 Assembly

More information

Email client application supporting SMTP and POP3

Email client application supporting SMTP and POP3 University of Göttingen, Center for Informatics, Prof. X. Fu, Prof. D. Hogrefe Email client application supporting SMTP and POP3 Telematics Practicum, SS 2007 Salke Hartung, Tim Waage, David Koll, Christian

More information

ARC: appmosphere RDF Classes for PHP Developers

ARC: appmosphere RDF Classes for PHP Developers ARC: appmosphere RDF Classes for PHP Developers Benjamin Nowack appmosphere web applications, Kruppstr. 100, 45145 Essen, Germany bnowack@appmosphere.com Abstract. ARC is an open source collection of lightweight

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

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

Towards XML-based Network Management for IP Networks

Towards XML-based Network Management for IP Networks Towards XML-based Network Management for IP Networks Mi-Jung Choi*, Yun-Jung Oh*, Hong-Taek Ju**, and Won-Ki Hong* * Dept. of Computer Science and Engineering, POSTECH, Korea ** Dept. of Computer Engineering,

More information

WIRIS quizzes web services Getting started with PHP and Java

WIRIS quizzes web services Getting started with PHP and Java WIRIS quizzes web services Getting started with PHP and Java Document Release: 1.3 2011 march, Maths for More www.wiris.com Summary This document provides client examples for PHP and Java. Contents WIRIS

More information

An Overview of Java. overview-1

An Overview of Java. overview-1 An Overview of Java overview-1 Contents What is Java Major Java features Java virtual machine Java programming language Java class libraries (API) GUI Support in Java Networking and Threads in Java overview-2

More information

Invited Expert on XForms and HTML Working Group

Invited Expert on XForms and HTML Working Group Author: Mark Birbeck CEO and CTO x-port.net Ltd. Invited Expert on XForms and HTML Working Group mailto:mark.birbeck@x-port.net http://www.x-port.net/ http://www.formsplayer.com/ Introduction We need to

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

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

JavaScript: Client-Side Scripting. Chapter 6

JavaScript: Client-Side Scripting. Chapter 6 JavaScript: Client-Side Scripting Chapter 6 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of Web http://www.funwebdev.com Development Section 1 of 8 WHAT IS JAVASCRIPT

More information

CSCI 3136 Principles of Programming Languages

CSCI 3136 Principles of Programming Languages CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University Winter 2013 CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University

More information

WEB SERVICES VULNERABILITIES

WEB SERVICES VULNERABILITIES WEB SERVICES VULNERABILITIES A white paper outlining the application-level threats to web services Prepared By: Date: February 15, 2007 Nishchal Bhalla Sahba Kazerooni Abstract Security has become the

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

Introduction to XML Applications

Introduction to XML Applications EMC White Paper Introduction to XML Applications Umair Nauman Abstract: This document provides an overview of XML Applications. This is not a comprehensive guide to XML Applications and is intended for

More information

Session Topic. Session Objectives. Extreme Java G22.3033-007. XML Data Processing for Java MOM and POP Applications

Session Topic. Session Objectives. Extreme Java G22.3033-007. XML Data Processing for Java MOM and POP Applications Extreme Java G22.3033-007 Session 3 - Sub-Topic 4 XML Data Processing for Java MOM & POP Applications Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

The Java Logging API and Lumberjack

The Java Logging API and Lumberjack The Java Logging API and Lumberjack Please Turn off audible ringing of cell phones/pagers Take calls/pages outside About this talk Discusses the Java Logging API Discusses Lumberjack Does not discuss log4j

More information

JAXB: Binding between XML Schema and Java Classes

JAXB: Binding between XML Schema and Java Classes JAXB: Binding between XML Schema and Java Classes Asst. Prof. Dr. Kanda Runapongsa (krunapon@kku.ac.th) Department of Computer Engineering Khon Kaen University Agenda JAXB Architecture Representing XML

More information

Unified XML/relational storage March 2005. The IBM approach to unified XML/relational databases

Unified XML/relational storage March 2005. The IBM approach to unified XML/relational databases March 2005 The IBM approach to unified XML/relational databases Page 2 Contents 2 What is native XML storage? 3 What options are available today? 3 Shred 5 CLOB 5 BLOB (pseudo native) 6 True native 7 The

More information

Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C

Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C 1 An essential part of any embedded system design Programming 2 Programming in Assembly or HLL Processor and memory-sensitive

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

Advanced compiler construction. General course information. Teacher & assistant. Course goals. Evaluation. Grading scheme. Michel Schinz 2007 03 16

Advanced compiler construction. General course information. Teacher & assistant. Course goals. Evaluation. Grading scheme. Michel Schinz 2007 03 16 Advanced compiler construction Michel Schinz 2007 03 16 General course information Teacher & assistant Course goals Teacher: Michel Schinz Michel.Schinz@epfl.ch Assistant: Iulian Dragos INR 321, 368 64

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

The Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1

The Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1 The Java Series Java Essentials I What is Java? Basic Language Constructs Slide 1 What is Java? A general purpose Object Oriented programming language. Created by Sun Microsystems. It s a general purpose

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

Interaction Translation Methods for XML/SNMP Gateway Using XML Technologies

Interaction Translation Methods for XML/SNMP Gateway Using XML Technologies Interaction Translation Methods for XML/SNMP Gateway Using XML Technologies Yoon-Jung Oh, Hong-Taek Ju and James W. Hong {bheart, juht, jwkhong}@postech.ac.kr Distributed Processing & Network Management

More information