XML for Bioinformatics

Size: px
Start display at page:

Download "XML for Bioinformatics"

Transcription

1 XML for Bioinformatics

2 Ethan Cerami XML for Bioinformatics

3 Library of Congress Cataloging-in-Publication Data Cerami, Ethan. XML for bioinformatics / Ethan Cerami. p. cm. Includes bibliographical references and index. ISBN XML (Document markup language) 2. Bioinformatics. I. Title. QA76.76.H94C dc ISBN C 2005 Springer Science+Business Media, Inc. All rights reserved. This work may not be translated or copied in whole or in part without the written permission of the publisher (Springer Science+Business Media, Inc., 233 Spring Street, New York, NY 10013, USA), except for brief excerpts in connection with reviews or scholarly analysis. Use in connection with any form of information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed is forbidden. The use in this publication of trade names, trademarks, service marks and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. Printed in the United States of America springeronline.com

4 To Lily Cerami. Welcome to the world.

5 Preface Introduction The goal of this book is to introduce XML to a bioinformatics audience. It does so by introducing the fundamentals of XML, Document Type Definitions (DTDs), XML Namespaces, XML Schema, and XML parsing, and illustrating these concepts with specific bioinformatics case studies. The book does not assume any previous knowledge of XML and is geared toward those who want a solid introduction to fundamental XML concepts. The book is divided into nine chapters: Chapter 1: Introduction to XML for Bioinformatics. This chapter provides an introduction to XML and describes the use of XML in biological data exchange. A bird s-eye view of our first case study, the Distributed Annotation System (DAS), is provided and we examine a sample DAS XML document. The chapter concludes with a discussion of the pros and cons of using XML in bioinformatic applications. Chapter 2: Fundamentals of XML and BSML. This chapter introduces the fundamental concepts of XML and the Bioinformatic Sequence Markup Language (BSML). We explore the origins of XML, define basic rules for XML document structure, and introduce XML Namespaces. We also explore several sample BSML documents and visualize these documents in the Rescentris Genomic Workspace TM Viewer. Chapter 3: DTDs for Bioinformatics. This chapter introduces XML Document Type Definitions (DTDs). With DTDs, you can define specific rules for XML document construction and validate XML instance documents against these rules. This chapter builds a DTD for representing protein sequences and does so in incremental stages we therefore start out simply and add layers of complexity as new concepts are introduced. The chapter also includes an overview of XML data formats available from The National Center for Biotechnology Information (NCBI), and provides a complete description of the NCBI TinySeq DTD. Chapter 4: XML Schemas for Bioinformatics. XML Schema represents the successor to XML Document Type Definitions (DTDs). We begin by comparing the two specifications and describe some of the advantages of using XML Schema. To illustrate core concepts, we rebuild the protein sequence DTD from Chapter 3 as an XML Schema, enabling you to compare the two specifications directly. The chapter concludes with a discussion of the Proteomics Standards Initiative Molecular Interaction (PSI-MI) XML format, an XML exchange format used to encode protein protein interactions. Chapter 5: Parsing NCBI XML in Perl. Perl remains the programming language of choice for many in bioinformatics. This chapter therefore explores several options for parsing XML in Perl, vii

6 viii Preface and focuses on two standard interfaces: the Simple API for XML (SAX) and the Document Object Model (DOM). We also explore the NCBI E-Fetch service, and retrieve nucleotide sequence records in XML in real time. This chapter assumes some prior knowledge of Perl. Chapter 6: The Distributed Annotation System. This chapter provides comprehensive coverage of the Distributed Annotation System (DAS), a distributed XML protocol used to exchange genome annotation data. To put DAS in perspective, we begin by exploring the process of genome annotation, and illustrate the DAS protocol from the end-user perspective. We then describe the DAS XML protocol in detail, and examine numerous sample XML documents from the Ensembl and UCSC DAS servers. The chapter includes a reference guide to all DAS commands, and a preview of anticipated features in the next version of DAS. Chapter 7: Parsing DAS Data in SAX. Despite the popularity of Perl, Java is becoming increasingly popular in bioinformatic applications. This chapter therefore describes the mechanics of parsing XML documents using the Java Simple API for XML (SAX). SAX is the de facto event-based XML parsing standard, and is widely implemented by many XML parsers, including several open source XML parsers. Several sample DAS applications are demonstrated, including one sample application which makes use of the open source BioJava library. This chapter assumes some prior knowledge of Java. Chapter 8: Parsing DAS Data in JDOM. This chapter focuses on the fundamentals of the JDOM API, a popular alternative to the SAX API. With JDOM, Java applications can easily navigate through XML document tree structures and extract elements, attributes, and character data. JDAS, an open source DAS client library, created by the author, is explored in detail. This chapter also assumes some prior knowledge of Java. Chapter 9: Web Services for Bioinformatics. Web services represent a new paradigm for building distributed web applications, and are currently being used extensively in bioinformatics. This chapter begins by presenting two broad approaches to building web services: the Representational State Transfer (REST) approach and the SOAP approach. We explore each approach in detail, and provide complete details on the latest SOAP specification. We also explore cabio, a comprehensive web service built by the National Cancer Institute (NCI). Companion Web Site This book includes a companion web site, available at: All the sample XML documents, and example Perl/Java programs described in the book are available for download. Acknowledgments Many people deserve special acknowledgments for making this book happen. First, I want to thank Lincoln Stein of Cold Spring Harbor Laboratory. Lincoln s presentation at the 2002 O Reilly Open Bioinformatics Conference and his subsequent paper in Nature (described in Chapter 1), inspired me to write this book in the first place. Lincoln s vision of creating a bioinformatics nation is a compelling one; I hope this book provides readers with the nuts and bolts information to make Lincoln s dream a reality. Lincoln also provided answers to many of my questions regarding the DAS protocol, and a complete technical review of Chapter 6. His feedback and detailed explanations were invaluable.

7 Preface ix Second, I want to thank everyone at the Computational Biology Center (cbio) at Memorial Sloan-Kettering Cancer Center, where I work. Chris Sander has created a unique and intellectually vibrant center, where I have been able to learn and thrive, and gain hands-on experience in many of the technologies described in this book. Alex Lash provided help in understanding the database resources at NCBI, and pointed me to the NCBI E-Fetch service described in Chapter 5. Anton Enright provided detailed feedback on Chapter 5. Gary Bader provided me with much-needed background information about specific biological databases and detailed background information about the PSI-MI XML format. Gary also provided feedback on Chapter 4. Third, I want to thank Lorrie LeJeune, Simon St. Laurent, Tracey Cranston, and Brian Gilman who helped out with an earlier incarnation of this book, before it found a new home at Springer- Verlag. Fourth, I want to thank several additional individuals who generously agreed to review specific chapters and provided scientific and technical feedback. Peter Covitz, Director of Bioinformatics Core Infrastructure at the National Cancer Institute (NCI) provided feedback on Chapter 9, and answered many of my questions regarding the NCI cabio bioinformatics framework. Jeff Spitzner, Chief Science Officer of Rescentris, Ltd., reviewed Chapter 2, and provided valuable feedback regarding BSML. I also want to thank Paul Farrell, my editor at Springer, for ushering the book to completion and keeping me on schedule. Finally, I want to thank my entire family for supporting me during the whole writing process associated with this book. Thanks to Dad, who hired me at the ripe age of twelve to complete my first bioinformatics programming project (really), and instilled in me a love of scientific ideas and ideals. Thanks to Mom for buying me my first computer (a Commodore Vic 20), and always reminding me to remain balanced. Special thanks to Nelli and Carla for their support and encouragement. Lastly, I want to thank my wife, Amy. All authors thank their wives in the acknowledgments, but Amy has the distinction of supporting me in this fourth book endeavor while also being pregnant. I do not know how she puts up with me, but she has been my rock, my soulmate, my everything. I love you.

8 Contents 1. Introduction to XML for Bioinformatics Introduction to XML XML Defined Origins of XML The XML Family of Specifications Web Services Defined Using XML for Biological Data Exchange Case Study: The Distributed Annotation System XML Formats for Bioinformatics Evaluating XML Usage in Bioinformatics Advantages of XML Disadvantages of XML Useful Resources Articles Web Site and Web Resources Fundamentals of XML and BSML Getting Started with BSML Using Genomic Workspace TM Fundamentals of XML Working with Elements Working with Attributes The XML Prolog Comments Processing Instructions Character Encoding CDATA Sections Creating Well-Formed XML Documents Creating Valid XML Documents Working with XML Parsers Fundamentals of XML Namespaces Why We Need XML Namespaces Declaring and Using XML Namespaces Declaring a Default Namespace 34 xi

9 xii Contents 2.4 Fundamentals of BSML BSML File Formats BSML Document Structure Representing Sequences Representing Sequence Features Retrieving Live BSML Data via XEMBL Useful Resources DTDs for Bioinformatics Introduction to DTDs A Bird s-eye View: Protein DTD Validating XML Documents Document Type Declarations Declaring Elements EMPTY ANY #PCDATA Child Elements Mixed Content Declaring Attributes Attribute Types Attribute Behaviors Working with Entities General Entities Parameter Entities Entity Summary Conditional DTD Sections Case Study: NCBI TinySeq NCBI and XML The TinySeq DTD XML Schemas for Bioinformatics Introduction to XML Schemas XML Schemas for Bioinformatics Essential Concepts: Representing Protein Data The <schema> element Schema Documentation Simple Types vs. Complex Types Global Elements vs. Local Elements Creating Instance Documents Validating Instance Documents Working with Simple Types Built-in Schema Types Working with Facets Working with Complex Types Introduction to Complex Types Declaring Empty Element Types 96

10 Contents xiii Declaring Mixed Element Types Occurrence Constraints Declaring Default Values Compositors: Sequence and Choice Defining Named Complex Types All Together Now! Basic Namespace Issues Case Study: The HUPO PSI Molecular Interaction Format PSI-MI Schema Overview A Sample PSI-MI Instance Document Working with the PSI-MI Controlled Vocabulary Parsing NCBI XML in Perl Introduction to XML Parsing in Perl Tree-Based vs. Event-Based XML Parsers Installing Modules via CPAN The Simple API for XML (SAX) Introduction to SAX SAX and Bioinformatics Applications SAX Introduction to XML::SAX Using NCBI EFetch and XML::SAX The Document Object Model (DOM) DOM Traversal with XML::LibXML Validating XML Documents with XML::LibXML Creating New Documents with XML::LibXML Using NCBI EFetch and XML::LibXML The Distributed Annotation System (DAS) Genome Annotation Introduction to DAS The WormBase DAS Viewer DAS Protocol Overview Getting Started DAS Requests DAS Responses X-DAS-Capabilities Header DAS Command Reference Retrieving Data Sources Retrieving Entry Points Retrieving Sequence Data Retrieving Annotations Working with Reference Maps Traversing the Ensembl Reference Map Working with Evolving Reference Maps The Future of DAS 172

11 xiv Contents 7. Parsing DAS Data with SAX Introduction to SAX A First Example The XMLReader Interface The ContentHandler Interface Extending the DefaultHandler Using InputSource Objects Validating XML Documents Checking for Well-Formedness Validating XML Documents: Overview Activating the SAX Validation Feature The ErrorHandler Interface Validating against XML Schemas Elements, Attributes, and Namespaces Working with Elements and Namespaces Working with Attributes Building Custom Data Structures with SAX Parsing DAS Feature Data Integrating with BioJava Parsing DAS Data with JDOM JDOM Basics JDOM Package Overview Parsing XML Documents with JDOM Parsing DAS Documents with JDOM Introduction to the JDOM Element API Traversing DAS Documents Parsing DAS dsn Documents Creating DAS Documents with JDOM Creating New Documents Creating New Elements A Complete Example Building the JDAS Library Using JDAS The JDAS Source Code Web Services for Bioinformatics Introduction to Web Services Web Services Defined Architectural Options Case Study: Introduction to the NCI cabio Project Background: Connecting to cabio via the Java RMI Interface Introduction to REST-Based Web Services Introduction to REST Connecting to the cabio REST Interface Example Application: Command Line cabio Browser 262

12 Contents xv 9.4 Introduction to SOAP SOAP Overview Constructing SOAP Messages Transporting SOAP via HTTP Introduction to Apache Axis Building a Web Service with Axis Connecting to cabio with Axis 281 Appendix Nucleotide Base Codes Amino Acid Codes 283 Bibliography 285 Index 291

XML for Bioinformatics

XML for Bioinformatics XML for Bioinformatics Ethan Cerami XML for Bioinformatics Library of Congress Cataloging-in-Publication Data Cerami, Ethan. XML for bioinformatics / Ethan Cerami. p. cm. Includes bibliographical references

More information

Guide to RISC Processors

Guide to RISC Processors Guide to RISC Processors Sivarama P. Dandamudi Guide to RISC Processors for Programmers and Engineers Sivarama P. Dandamudi School of Computer Science Carleton University Ottawa, ON K1S 5B6 Canada sivarama@scs.carleton.ca

More information

Pro Perl Parsing. Christopher M. Frenz

Pro Perl Parsing. Christopher M. Frenz Pro Perl Parsing Christopher M. Frenz Pro Perl Parsing Copyright 2005 by Christopher M. Frenz Lead Editors: Jason Gilmore and Matthew Moodie Technical Reviewer: Teodor Zlatanov Editorial Board: Steve Anglin,

More information

Microsoft Computer Vision APIs Distilled

Microsoft Computer Vision APIs Distilled Microsoft Computer Vision APIs Distilled Getting Started with Cognitive Services Alessandro Del Sole Microsoft Computer Vision APIs Distilled Alessandro Del Sole Cremona, Italy ISBN-13 (pbk): 978-1-4842-3341-2

More information

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian Pro MERN Stack Full Stack Web App Development with Mongo, Express, React, and Node Vasan Subramanian Pro MERN Stack Vasan Subramanian Bangalore, Karnataka, India ISBN-13 (pbk): 978-1-4842-2652-0 ISBN-13

More information

Using MSC/NASTRAN: Statics and Dynamics

Using MSC/NASTRAN: Statics and Dynamics Using MSC/NASTRAN: Statics and Dynamics A.D. Cifuentes Using MSC/NASTRAN Statics and Dynamics With 94 Illustrations Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Arturo O. Cifuentes

More information

LOGICAL DATA MODELING

LOGICAL DATA MODELING LOGICAL DATA MODELING INTEGRATED SERIES IN INFORMATION SYSTEMS Professor Ramesh Sharda Oklahoma State University Series Editors Prof. Dr. Stefan VoB Universitat Hamburg Expository and Research Monographs

More information

Scheduling in Distributed Computing Systems Analysis, Design & Models

Scheduling in Distributed Computing Systems Analysis, Design & Models Scheduling in Distributed Computing Systems Analysis, Design & Models (A Research Monograph) Scheduling in Distributed Computing Systems Analysis, Design & Models (A Research Monograph) by Deo Prakash

More information

XML: Managing with the Java Platform

XML: Managing with the Java Platform In order to learn which questions have been answered correctly: 1. Print these pages. 2. Answer the questions. 3. Send this assessment with the answers via: a. FAX to (212) 967-3498. Or b. Mail the answers

More information

Essential Angular for ASP.NET Core MVC

Essential Angular for ASP.NET Core MVC Essential Angular for ASP.NET Core MVC Adam Freeman Essential Angular for ASP.NET Core MVC Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-2915-6 ISBN-13 (electronic): 978-1-4842-2916-3 DOI 10.1007/978-1-4842-2916-3

More information

SOFTWARE-IMPLEMENTED HARDWARE FAULT TOLERANCE

SOFTWARE-IMPLEMENTED HARDWARE FAULT TOLERANCE SOFTWARE-IMPLEMENTED HARDWARE FAULT TOLERANCE SOFTWARE-IMPLEMENTED HARDWARE FAULT TOLERANCE O. Goloubeva, M. Rebaudengo, M. Sonza Reorda, and M. Violante Politecnico di Torino - Dipartimento di Automatica

More information

Windows 10 Revealed. The Universal Windows Operating System for PC, Tablets, and Windows Phone. Kinnary Jangla

Windows 10 Revealed. The Universal Windows Operating System for PC, Tablets, and Windows Phone. Kinnary Jangla Windows 10 Revealed The Universal Windows Operating System for PC, Tablets, and Windows Phone Kinnary Jangla Windows 10 Revealed Kinnary Jangla Bing Maps San Francisco, California, USA ISBN-13 (pbk): 978-1-4842-0687-4

More information

Functional Programming in R

Functional Programming in R Functional Programming in R Advanced Statistical Programming for Data Science, Analysis and Finance Thomas Mailund Functional Programming in R: Advanced Statistical Programming for Data Science, Analysis

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2411 1 Extensible

More information

Optical Burst Switched Networks

Optical Burst Switched Networks Optical Burst Switched Networks OPTICAL NETWORKS SERIES Series Editor Biswanath Mukherjee, University of California, Davis OPTICAL BURST SWITCHED NETWORKS JASON P. JUE The University of Texas at Dallas

More information

XML Primer Plus By Nicholas Chase

XML Primer Plus By Nicholas Chase Table of Contents Index XML Primer Plus By Nicholas Chase Publisher : Sams Publishing Pub Date : December 16, 2002 ISBN : 0-672-32422-9 Pages : 1024 This book presents XML programming from a conceptual

More information

XML. Objectives. Duration. Audience. Pre-Requisites

XML. Objectives. Duration. Audience. Pre-Requisites XML XML - extensible Markup Language is a family of standardized data formats. XML is used for data transmission and storage. Common applications of XML include business to business transactions, web services

More information

UNDERSTANDING IPv6. Youngsong Mun 1 and Hyewon K. Lee 2 'Soongsil University, Seoul, Korea; 2 Daejin University, Kyungki, Korea.

UNDERSTANDING IPv6. Youngsong Mun 1 and Hyewon K. Lee 2 'Soongsil University, Seoul, Korea; 2 Daejin University, Kyungki, Korea. UNDERSTANDING IPv6 UNDERSTANDING IPv6 Youngsong Mun 1 and Hyewon K. Lee 2 'Soongsil University, Seoul, Korea; 2 Daejin University, Kyungki, Korea 4iJ Springer Youngsong Mun Soongsil University Seoul, Korea

More information

Oracle BI Publisher 11g R1: Fundamentals

Oracle BI Publisher 11g R1: Fundamentals Oracle BI Publisher 11g R1: Fundamentals Volume I Student Guide D68420GC10 Edition 1.0 June 2011 D73304 Authors Lea Shaw Sindhu Rao Technical Contributors and Reviewers Timothy McGlue Nikos Psomas Pradeep

More information

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML Chapter 7 XML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML

More information

Web Development with Java

Web Development with Java Web Development with Java Tim Downey Web Development with Java Using Hibernate, JSPs and Servlets Tim Downey, BS, MS Florida International University Miami, FL 33199, USA British Library Cataloguing in

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Semester 2, 2017 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid= 2465 1

More information

ITSM: An Interactive Time Series Modelling Package for the pe

ITSM: An Interactive Time Series Modelling Package for the pe ITSM: An Interactive Time Series Modelling Package for the pe Peter J. Brockwell Richard A. Davis ITSM: An Interactive Time Series Modelling Package for the pe With 53 Illustrations and 3 Diskettes Written

More information

COPYRIGHTED MATERIAL. Contents. Part I: Introduction 1. Chapter 1: What Is XML? 3. Chapter 2: Well-Formed XML 23. Acknowledgments

COPYRIGHTED MATERIAL. Contents. Part I: Introduction 1. Chapter 1: What Is XML? 3. Chapter 2: Well-Formed XML 23. Acknowledgments Acknowledgments Introduction ix xxvii Part I: Introduction 1 Chapter 1: What Is XML? 3 Of Data, Files, and Text 3 Binary Files 4 Text Files 5 A Brief History of Markup 6 So What Is XML? 7 What Does XML

More information

Introduction to XML. XML: basic elements

Introduction to XML. XML: basic elements Introduction to XML XML: basic elements XML Trying to wrap your brain around XML is sort of like trying to put an octopus in a bottle. Every time you think you have it under control, a new tentacle shows

More information

Mobile Phone Security and Forensics

Mobile Phone Security and Forensics Mobile Phone Security and Forensics Iosif I. Androulidakis Mobile Phone Security and Forensics A Practical Approach Second Edition Iosif I. Androulidakis Pedini Ioannina Greece ISBN 978-3-319-29741-5

More information

7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML

7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML is a markup language,

More information

TagSoup: A SAX parser in Java for nasty, ugly HTML. John Cowan

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

More information

Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4

Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Stephen L. Campbell, Jean-Philippe Chancelier and Ramine Nikoukhah Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Second Edition

More information

BIOINFORMATICS A PRACTICAL GUIDE TO THE ANALYSIS OF GENES AND PROTEINS

BIOINFORMATICS A PRACTICAL GUIDE TO THE ANALYSIS OF GENES AND PROTEINS BIOINFORMATICS A PRACTICAL GUIDE TO THE ANALYSIS OF GENES AND PROTEINS EDITED BY Genome Technology Branch National Human Genome Research Institute National Institutes of Health Bethesda, Maryland B. F.

More information

ASP.NET Core Recipes

ASP.NET Core Recipes ASP.NET Core Recipes A Problem-Solution Approach Second Edition John Ciliberti ASP.NET Core Recipes: A Problem-Solution Approach John Ciliberti Sparta, New Jersey, USA ISBN-13 (pbk): 978-1-4842-0428-3

More information

MDCT and 3D Workstations

MDCT and 3D Workstations MDCT and 3D Workstations Scott A. Lipson, MD Associate Director of Imaging, Long Beach Memorial Medical Center, Long Beach, California MDCT and 3D Workstations A Practical How-To Guide and Teaching File

More information

Java Quick Syntax Reference. Second Edition. Mikael Olsson

Java Quick Syntax Reference. Second Edition. Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Mikael Olsson Hammarland, Länsi-Suomi, Finland ISBN-13 (pbk):

More information

The Xlint Project * 1 Motivation. 2 XML Parsing Techniques

The Xlint Project * 1 Motivation. 2 XML Parsing Techniques The Xlint Project * Juan Fernando Arguello, Yuhui Jin {jarguell, yhjin}@db.stanford.edu Stanford University December 24, 2003 1 Motivation Extensible Markup Language (XML) [1] is a simple, very flexible

More information

Building Custom Tasks for SQL Server Integration Services

Building Custom Tasks for SQL Server Integration Services Building Custom Tasks for SQL Server Integration Services Andy Leonard Building Custom Tasks for SQL Server Integration Services Andy Leonard Farmville, Virginia, USA ISBN-13 (pbk): 978-1-4842-2939-2 ISBN-13

More information

The Windows 10 Productivity Handbook

The Windows 10 Productivity Handbook The Windows 10 Productivity Handbook Discover Expert Tips, Tricks, and Hidden Features in Windows 10 Mike Halsey The Windows 10 Productivity Handbook Mike Halsey Sheffield, Yorkshire, UK ISBN-13 (pbk):

More information

COMP9321 Web Application Engineering. Extensible Markup Language (XML)

COMP9321 Web Application Engineering. Extensible Markup Language (XML) COMP9321 Web Application Engineering Extensible Markup Language (XML) Dr. Basem Suleiman Service Oriented Computing Group, CSE, UNSW Australia Semester 1, 2016, Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2442

More information

JavaScript Quick Syntax Reference

JavaScript Quick Syntax Reference JavaScript Quick Syntax Reference Mikael Olsson JavaScript Quick Syntax Reference Copyright 2015 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the

More information

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS

More information

Fundamentals of Operating Systems. Fifth Edition

Fundamentals of Operating Systems. Fifth Edition Fundamentals of Operating Systems Fifth Edition Fundamentals of Operating Systems A.M. Lister University of Queensland R. D. Eager University of Kent at Canterbury Fifth Edition Springer Science+Business

More information

Pro Angular 6. Third Edition. Adam Freeman

Pro Angular 6. Third Edition. Adam Freeman Pro Angular 6 Third Edition Adam Freeman Pro Angular 6 Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-3648-2 ISBN-13 (electronic): 978-1-4842-3649-9 https://doi.org/10.1007/978-1-4842-3649-9 Library

More information

XML APIs Testing Using Advance Data Driven Techniques (ADDT) Shakil Ahmad August 15, 2003

XML APIs Testing Using Advance Data Driven Techniques (ADDT) Shakil Ahmad August 15, 2003 XML APIs Testing Using Advance Data Driven Techniques (ADDT) Shakil Ahmad August 15, 2003 Table of Contents 1. INTRODUCTION... 1 2. TEST AUTOMATION... 2 2.1. Automation Methodology... 2 2.2. Automated

More information

Cambridge University Press The Elements of UML 2.0 Style Scott W. Ambler Frontmatter More information. The Elements. UML TM2.

Cambridge University Press The Elements of UML 2.0 Style Scott W. Ambler Frontmatter More information. The Elements. UML TM2. The Elements of UML TM2.0 Style For Beverley The Elements of UML TM2.0 Style CAMBRIDGE UNIVERSITY PRESS Cambridge,NewYork,Melbourne,Madrid,CapeTown,Singapore,SãoPaulo Cambridge University Press 40 West

More information

C++ Quick Syntax Reference

C++ Quick Syntax Reference C++ Quick Syntax Reference Mikael Olsson C++ Quick Syntax Reference Copyright 2013 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part

More information

Introduction p. 1 An XML Primer p. 5 History of XML p. 6 Benefits of XML p. 11 Components of XML p. 12 BNF Grammar p. 14 Prolog p. 15 Elements p.

Introduction p. 1 An XML Primer p. 5 History of XML p. 6 Benefits of XML p. 11 Components of XML p. 12 BNF Grammar p. 14 Prolog p. 15 Elements p. Introduction p. 1 An XML Primer p. 5 History of XML p. 6 Benefits of XML p. 11 Components of XML p. 12 BNF Grammar p. 14 Prolog p. 15 Elements p. 16 Attributes p. 17 Comments p. 18 Document Type Definition

More information

Hardware Acceleration of EDA Algorithms

Hardware Acceleration of EDA Algorithms Hardware Acceleration of EDA Algorithms Kanupriya Gulati Sunil P. Khatri Hardware Acceleration of EDA Algorithms Custom ICs, FPGAs and GPUs 123 Kanupriya Gulati 109 Branchwood Trl Coppell TX 75019 USA

More information

Handbook of Face Recognition

Handbook of Face Recognition Handbook of Face Recognition Stan Z. Li Anil K. Jain Editors Handbook of Face Recognition With 210 Illustrations Stan Z. Li Anil K. Jain Center for Biometrics Research and Testing & Department of Computer

More information

Chunjie Duan Brock J. LaMeres Sunil P. Khatri. On and Off-Chip Crosstalk Avoidance in VLSI Design

Chunjie Duan Brock J. LaMeres Sunil P. Khatri. On and Off-Chip Crosstalk Avoidance in VLSI Design Chunjie Duan Brock J. LaMeres Sunil P. Khatri On and Off-Chip Crosstalk Avoidance in VLSI Design 123 On and Off-Chip Crosstalk Avoidance in VLSI Design Chunjie Duan Brock J. LaMeres Sunil P. Khatri On

More information

A Developer s Guide to the Semantic Web

A Developer s Guide to the Semantic Web A Developer s Guide to the Semantic Web von Liyang Yu 1. Auflage Springer 2011 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 642 15969 5 schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG

More information

George Grätzer. Practical L A TEX

George Grätzer. Practical L A TEX Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN

More information

Delivery Options: Attend face-to-face in the classroom or remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or remote-live attendance. XML Programming Duration: 5 Days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options. Click here for more info. Delivery Options:

More information

About This Book... ix About The Author... xiii Acknowledgments...xv Chapter 1: Why Custom Tasks... 1

About This Book... ix About The Author... xiii Acknowledgments...xv Chapter 1: Why Custom Tasks... 1 Contents About This Book... ix About The Author... xiii Acknowledgments...xv Chapter 1: Why Custom Tasks... 1 Why Isn t Everything Built In for Me?... 2 Options for Custom Processes in SAS Enterprise Guide...

More information

Developing Web Applications

Developing Web Applications Developing Web Applications Ralph Moseley Middlesex University IIICENTCNNIAL 1807 ewiley 2007 13ICCNTENNIAL John Wiley & Sons, Ltd Preface Introduction Features Additional Materials Trademarks Acknowledgments

More information

MULTIMEDIA DATABASE MANAGEMENT SYSTEMS

MULTIMEDIA DATABASE MANAGEMENT SYSTEMS MULTIMEDIA DATABASE MANAGEMENT SYSTEMS THE KLUWER INTERNATIONAL SERIES IN ENGINEERING AND COMPUTER SCIENCE MULTIMEDIA SYSTEMS AND APPLICATIONS Recently Published Titles: Consulting Editor Borko Furht Florida

More information

On-Chip Instrumentation

On-Chip Instrumentation On-Chip Instrumentation Neal Stollon On-Chip Instrumentation Design and Debug for Systems on Chip Neal Stollon HDL Dynamics, Dallas TX, USA neals@hdldynamics.com ARM9, Coresight, ETM, ETM9, MMD are trademarks

More information

Chapter 13 XML: Extensible Markup Language

Chapter 13 XML: Extensible Markup Language Chapter 13 XML: Extensible Markup Language - Internet applications provide Web interfaces to databases (data sources) - Three-tier architecture Client V Application Programs Webserver V Database Server

More information

Pro JavaScript Performance Monitoring and Visualization

Pro JavaScript Performance Monitoring and Visualization Pro JavaScript Performance Monitoring and Visualization Tom Barker Pro JavaScript Performance Copyright 2012 by Tom Barker This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Visualization in Supercomputing

Visualization in Supercomputing Visualization in Supercomputing Raul H. Mendez Editor Visualization in Supercomputing With 166 Illustrations, 25 in Color Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Raul H.

More information

XML Parsers. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University

XML Parsers. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University XML Parsers Asst. Prof. Dr. Kanda Runapongsa Saikaew (krunapon@kku.ac.th) Dept. of Computer Engineering Khon Kaen University 1 Overview What are XML Parsers? Programming Interfaces of XML Parsers DOM:

More information

Practical Amazon EC2, SQS, Kinesis, and S3

Practical Amazon EC2, SQS, Kinesis, and S3 Practical Amazon EC2, SQS, Kinesis, and S3 A Hands-On Approach to AWS Sunil Gulabani Practical Amazon EC2, SQS, Kinesis, and S3: A Hands-On Approach to AWS Sunil Gulabani Ahmedabad, Gujarat, India ISBN-13

More information

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title Notes Ask course content questions on Slack (is651-spring-2018.slack.com) Contact me by email to add you to Slack Make sure you checked Additional Links at homework page before you ask In-class discussion

More information

Markup Languages SGML, HTML, XML, XHTML. CS 431 February 13, 2006 Carl Lagoze Cornell University

Markup Languages SGML, HTML, XML, XHTML. CS 431 February 13, 2006 Carl Lagoze Cornell University Markup Languages SGML, HTML, XML, XHTML CS 431 February 13, 2006 Carl Lagoze Cornell University Problem Richness of text Elements: letters, numbers, symbols, case Structure: words, sentences, paragraphs,

More information

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11 !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... 7:4 @import Directive... 9:11 A Absolute Units of Length... 9:14 Addressing the First Line... 9:6 Assigning Meaning to XML Tags...

More information

Agenda. XML Generics. XML for Java Developers G Session 1 - Main Theme Markup Language Technologies (Part I)

Agenda. XML Generics. XML for Java Developers G Session 1 - Main Theme Markup Language Technologies (Part I) XML for Java Developers G22.3033-002 Session 1 - Main Theme Markup Language Technologies (Part I) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

XML. Jonathan Geisler. April 18, 2008

XML. Jonathan Geisler. April 18, 2008 April 18, 2008 What is? IS... What is? IS... Text (portable) What is? IS... Text (portable) Markup (human readable) What is? IS... Text (portable) Markup (human readable) Extensible (valuable for future)

More information

Open Source Software for Digital Forensics

Open Source Software for Digital Forensics Open Source Software for Digital Forensics Ewa Huebner Editors Stefano Zanero Open Source Software for Digital Forensics Editors Ewa Huebner Computer Forensis Consulting, Warrimoo NSW Australia ehuebner@computerforensis.com

More information

DIFFERENTIAL EQUATION ANALYSIS IN BIOMEDICAL SCIENCE AND ENGINEERING

DIFFERENTIAL EQUATION ANALYSIS IN BIOMEDICAL SCIENCE AND ENGINEERING DIFFERENTIAL EQUATION ANALYSIS IN BIOMEDICAL SCIENCE AND ENGINEERING DIFFERENTIAL EQUATION ANALYSIS IN BIOMEDICAL SCIENCE AND ENGINEERING ORDINARY DIFFERENTIAL EQUATION APPLICATIONS WITH R William E. Schiesser

More information

Part I: Data Mining Foundations

Part I: Data Mining Foundations Table of Contents 1. Introduction 1 1.1. What is the World Wide Web? 1 1.2. A Brief History of the Web and the Internet 2 1.3. Web Data Mining 4 1.3.1. What is Data Mining? 6 1.3.2. What is Web Mining?

More information

Programming with Turing and Object Oriented Turing

Programming with Turing and Object Oriented Turing Programming with Turing and Object Oriented Turing Peter Grogono Programming with Turing and Object Oriented Turing Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Barcelona Budapest

More information

Beginning Functional JavaScript

Beginning Functional JavaScript Beginning Functional JavaScript Functional Programming with JavaScript Using EcmaScript 6 Anto Aravinth Beginning Functional JavaScript Anto Aravinth Chennai, Tamil Nadu, India ISBN-13 (pbk): 978-1-4842-2655-1

More information

XML Overview, part 1

XML Overview, part 1 XML Overview, part 1 Norman Gray Revision 1.4, 2002/10/30 XML Overview, part 1 p.1/28 Contents The who, what and why XML Syntax Programming with XML Other topics The future http://www.astro.gla.ac.uk/users/norman/docs/

More information

MATLAB Programming for Numerical Analysis. César Pérez López

MATLAB Programming for Numerical Analysis. César Pérez López MATLAB Programming for Numerical Analysis César Pérez López MATLAB Programming for Numerical Analysis Copyright 2014 by César Pérez López This work is subject to copyright. All rights are reserved by the

More information

CSI 3140 WWW Structures, Techniques and Standards. Representing Web Data: XML

CSI 3140 WWW Structures, Techniques and Standards. Representing Web Data: XML CSI 3140 WWW Structures, Techniques and Standards Representing Web Data: XML XML Example XML document: An XML document is one that follows certain syntax rules (most of which we followed for XHTML) Guy-Vincent

More information

Objective-C Quick Syntax Reference

Objective-C Quick Syntax Reference Objective-C Quick Syntax Reference Matthew Campbell Objective-C Quick Syntax Reference Copyright 2014 by Matthew Campbell This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance. XML Programming Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend face-to-face in the classroom or

More information

Application-Specific Mesh-based Heterogeneous FPGA Architectures

Application-Specific Mesh-based Heterogeneous FPGA Architectures Application-Specific Mesh-based Heterogeneous FPGA Architectures Husain Parvez H abib Mehrez Application-Specific Mesh-based Heterogeneous FPGA Architectures Husain Parvez Habib Mehrez Université Pierre

More information

SQL Server AlwaysOn Revealed

SQL Server AlwaysOn Revealed SQL Server AlwaysOn Revealed Second Edition Peter A. Carter SQL Server AlwaysOn Revealed, 2nd Edition Peter A. Carter Botley, United Kingdom ISBN-13 (pbk): 978-1-4842-2396-3 ISBN-13 (electronic): 978-1-4842-2397-0

More information

Research on Industrial Security Theory

Research on Industrial Security Theory Research on Industrial Security Theory Menggang Li Research on Industrial Security Theory Menggang Li China Centre for Industrial Security Research Beijing, People s Republic of China ISBN 978-3-642-36951-3

More information

C Quick Syntax Reference

C Quick Syntax Reference C Quick Syntax Reference Mikael Olsson C Quick Syntax Reference Copyright 2015 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of

More information

Chapter 16 BLUEJAY: A BROWSER FOR LINEAR UNITS IN JAVA. Paul Gordon and Christoph W. Sensen

Chapter 16 BLUEJAY: A BROWSER FOR LINEAR UNITS IN JAVA. Paul Gordon and Christoph W. Sensen Chapter 16 BLUEJAY: A BROWSER FOR LINEAR UNITS IN JAVA Paul Gordon and Christoph W. Sensen Institute for Marine Biosciences National Research Council of Canada 1411 Oxford St. Halifax, NS B3H 3Z1 Canada

More information

Web Standards Creativity: Innovations in Web Design with XHTML, CSS, and DOM Scripting

Web Standards Creativity: Innovations in Web Design with XHTML, CSS, and DOM Scripting Web Standards Creativity: Innovations in Web Design with XHTML, CSS, and DOM Scripting Cameron Adams Mark Boulton Andy Clarke Simon Collison Jeff Croft Derek Featherstone Ian Lloyd Ethan Marcotte Dan Rubin

More information

Data Presentation and Markup Languages

Data Presentation and Markup Languages Data Presentation and Markup Languages MIE456 Tutorial Acknowledgements Some contents of this presentation are borrowed from a tutorial given at VLDB 2000, Cairo, Agypte (www.vldb.org) by D. Florescu &.

More information

XML in the bipharmaceutical

XML in the bipharmaceutical XML in the bipharmaceutical sector XML holds out the opportunity to integrate data across both the enterprise and the network of biopharmaceutical alliances - with little technological dislocation and

More information

Inside Relational Databases with Examples in Access

Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Mark Whitehorn and Bill Marklyn 123 Mark Whitehorn Applied Computing Division, University of Dundee,

More information

Learn PHP 7. Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON, and MySQL. Steve Prettyman

Learn PHP 7. Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON, and MySQL. Steve Prettyman THE EXPERT S VOICE IN WEB DEVELOPMENT Learn PHP 7 Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON, and MySQL Steve Prettyman Learn PHP 7 Object-Oriented Modular Programming

More information

Android Continuous Integration

Android Continuous Integration Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla Android Continuous Integration Pradeep Macharla North Carolina, USA ISBN-13 (pbk): 978-1-4842-2795-4

More information

XML in the Development of Component Systems. Parser Interfaces: SAX

XML in the Development of Component Systems. Parser Interfaces: SAX XML in the Development of Component Systems Parser Interfaces: SAX XML Programming Models Treat XML as text useful for interactive creation of documents (text editors) also useful for programmatic generation

More information

Tutorial 2: Validating Documents with DTDs

Tutorial 2: Validating Documents with DTDs 1. One way to create a valid document is to design a document type definition, or DTD, for the document. 2. As shown in the accompanying figure, the external subset would define some basic rules for all

More information

Practical Spring LDAP

Practical Spring LDAP Practical Spring LDAP Enterprise Java LDAP Development Made Easy Balaji Varanasi Practical Spring LDAP: Enterprise Java LDAP Development Made Easy Copyright 2013 Balaji Varanasi. All rights reserved. This

More information

INFORMATION RETRIEVAL SYSTEMS: Theory and Implementation

INFORMATION RETRIEVAL SYSTEMS: Theory and Implementation INFORMATION RETRIEVAL SYSTEMS: Theory and Implementation THE KLUWER INTERNATIONAL SERIES ON INFORMATION RETRIEVAL Series Editor W. Bruce Croft University of Massachusetts Amherst, MA 01003 Also in the

More information

Companion ebook Available Pro Android Includes Android 1.5 SOURCE CODE ONLINE US $44.99

Companion ebook Available Pro Android Includes Android 1.5 SOURCE CODE ONLINE US $44.99 The EXPERT s VOIce in Open Source Pro Android Covers Google s Android Platform and its fundamental APIs, from basic concepts such as Android resources, intents, and content providers to advanced topics

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science Series Editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi C. Jain David Padua Xuemin (Sherman) Shen Borko Furht V.S. Subrahmanian Martial Hebert

More information

Beginning Robotics Programming in Java with LEGO Mindstorms

Beginning Robotics Programming in Java with LEGO Mindstorms Beginning Robotics Programming in Java with LEGO Mindstorms Wei Lu Beginning Robotics Programming in Java with LEGO Mindstorms Wei Lu Keene, New Hampshire, USA ISBN-13 (pbk): 978-1-4842-2004-7 ISBN-13

More information

Pro Java Clustering and Scalability

Pro Java Clustering and Scalability Pro Java Clustering and Scalability Building Real-Time Apps with Spring, Cassandra, Redis, WebSocket and RabbitMQ Jorge Acetozi Pro Java Clustering and Scalability: Building Real-Time Apps with Spring,

More information

WIRELESS ATM AND AD-HOC NETWORKS. Protocols and Architectures

WIRELESS ATM AND AD-HOC NETWORKS. Protocols and Architectures WIRELESS ATM AND AD-HOC NETWORKS Protocols and Architectures WIRELESS ATM AND AD-HOC NETWORKS Protocols and Architectures C-K Toh, Ph.D. University of Cambridge Cambridge, United Kingdom SPRINGER-SCIENCE+BUSINESS

More information

Xerces Http Apache Org Xml Features Validation Schema Full Checking

Xerces Http Apache Org Xml Features Validation Schema Full Checking Xerces Http Apache Org Xml Features Validation Schema Full Checking Hi, Apache Jena uses a feature of Xerces 2 for validating strings that claim to be setfeature("apache.org/xml/features/validation/schema-full-checking".

More information

Down with Species-Specific Database Projects, Up with Data Services

Down with Species-Specific Database Projects, Up with Data Services 1 Down with Species-Specific Database Projects, Up with Data Services Lincoln D. Stein, Cold Spring Harbor Laboratory This whitepaper begins with an illustration drawn from a database that has nothing

More information

Pro Perl Parsing. Christopher M. Frenz

Pro Perl Parsing. Christopher M. Frenz Pro Perl Parsing Christopher M. Frenz Pro Perl Parsing Copyright 2005 by Christopher M. Frenz Lead Editors: Jason Gilmore and Matthew Moodie Technical Reviewer: Teodor Zlatanov Editorial Board: Steve Anglin,

More information

Agenda. Summary of Previous Session. XML for Java Developers G Session 6 - Main Theme XML Information Processing (Part II)

Agenda. Summary of Previous Session. XML for Java Developers G Session 6 - Main Theme XML Information Processing (Part II) XML for Java Developers G22.3033-002 Session 6 - Main Theme XML Information Processing (Part II) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

Android Continuous Integration

Android Continuous Integration Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla

More information