Syndicate Framework 55 Table of Contents Ix

Total Page:16

File Type:pdf, Size:1020Kb

Syndicate Framework 55 Table of Contents Ix Individual Service Composition in the Web-age Inauguraldissertation zur Erlangung der Wurde¨ eines Doktors der Philosophie vorgelegt der Philosophisch-Naturwissenschaftlichen Fakultat¨ der Universitat¨ Basel von Sven Rizzotti aus Basel Basel, 2008 Genehmigt von der Philosophisch-Naturwissenschaftlichen Fakult¨atauf Antrag von Herrn Prof. Dr. Helmar Burkhart, Universit¨atBasel und Herrn Prof. Dr. Gustavo Alonso, ETH Z¨urich, Korreferent. Basel, den 11.12.2007 Prof. Dr. Hans-Peter Hauri, Dekan To my parents, Heide and Fritz Rizzotti and my brother J¨org. On the Internet, nobody knows you're a dog. Peter Steiner cartoon in The New Yorker (5 July 1993) page 61 Abstract Nowadays, for a web site to reach peak popularity it must present the latest information, combined from various sources, to give an interactive, customizable impression. Embedded content and functionality from a range of specialist fields has led to a significant improvement in web site quality. However, until now the capacity of a web site has been defined at the time of creation; extension of this capacity has only been possible with considerable additional effort. The aim of this thesis is to present a software architecture that allows users to personalize a web site themselves, with capabilities taken from the immense resources of the World Wide Web. Recent web sites are analyzed and categorized according to their customization potential. The results of this analysis are then related to patterns in the field of software engineering and from these results, a general conclusion is drawn about the requirements of an application architecture to support these patterns. A theoretical concept of such an architecture is proposed and described in detail. The empirical part of the study includes an implementation of the proposal and a demonstration of the assembly of capabilities found in the World Wide Web. This implementation is based on established technologies but applies them to a new, specially-designed structure. It allows users to add selected facilities to arbitrary web sites simply by calling a specific web address. This gives the user the potential to adapt the appearance and function of web sites to his or her personal needs. An in-depth analysis of the challenges and restrictions of the soft- ware design completes the proposed architecture. Practical examples of behavior patterns show possible implementations in a range of fields. Finally, a vision developed from the results presented in this thesis is outlined and subjects for future research are examined. Keywords: collaborative software, mashup, rich internet applications, semantic web, service-oriented architecture, web services, web 2.0, web 3.0 iii Acknowledgements I would like to express my gratitude to people involved in my research process. Firstly my supervisors deserve my acknowledgements. I would like to thank Professor Helmar Burkhart and Professor Gustavo Alonso for encouraging me to commence the dissertation research process and also for making it possible financially. Professor Helmar Burkhart has provided me with invaluable guidance during the research and I am very grateful for all his efforts and for the time he has given me. I would like to thank all the co-workers at the Department of Computer Science and Pharmacy, with whom I have discussed the various aspects of conducting research for dissertation. The discussions with Christina Weber, Alexander V¨ogtli,Martin Guggisberg, and Tibor Gyalog have particularly influenced the progress of my research and I would like to thank them for patiently listening to my torrent of words from time to time. I would also like to express my warmest thanks to Robert Frank, Beat Ernst, Pascal Betz and Adrian Ensner, with whom I have had many fruitful discussions. I am also very grateful to Andrew Brown, Stefanie Mahrer and Eric Fischer for their valuable time reading and discussing my writings. The support provided by my family and closest friends has been truly indispensable throughout the project. Urs and Vera Schlittler made the writing process a delightful experience by hosting me in the wonderful Swiss alps and especially Ruth Schlittler deserves my warmest thanks for her endless support and understanding. Financial support for the printing of this thesis was provided by the dissertation fund of the University of Basel. Basel, June 10, 2008 v Table of Contents Abstract iii Introduction1 I Fundamentals7 1 Evolution in Usage of the Web9 1.1 Before the World Wide Web.................9 1.2 From information silos to rich interfaces.......... 10 1.3 Rich web applications.................... 11 1.4 Web applications vs. desktop applications......... 11 1.5 Summary........................... 13 2 Distinguishing Elements in the Web Environment 15 2.1 Overview........................... 15 2.2 Monolithic software architecture.............. 15 2.3 Service-oriented architectures................ 16 2.3.1 Approach to service-oriented architecture..... 17 2.3.2 Approach to service-oriented architecture..... 18 2.4 Web-based services...................... 19 2.4.1 Business models................... 19 2.4.2 Summary: The community effect.......... 22 2.4.3 Web 2.0........................ 22 2.4.4 Mashups........................ 23 2.5 Browser technologies..................... 26 2.5.1 Browser extensions.................. 26 vii viii Table of Contents 2.5.2 Plugins........................ 26 2.5.3 Themes........................ 27 3 Web Technologies 29 3.1 Overview........................... 29 3.2 Server-side........................... 29 3.2.1 Server-side scripts.................. 29 3.2.2 Server pages..................... 30 3.3 Client-side........................... 32 3.3.1 JavaScript....................... 32 3.3.2 Flash......................... 33 3.3.3 Laszlo, OpenLaszlo, DHTML............ 34 3.3.4 Java Applets..................... 34 3.4 Communication........................ 35 3.4.1 AJAX......................... 35 3.4.2 SOAP and related standards............ 36 3.4.3 REST......................... 39 3.4.4 Alternatives to SOAP and REST.......... 40 4 Problem Description 41 4.1 Categories of individualization............... 42 4.2 Software architecture to support category-based personal- ization............................. 43 4.3 Challenge of this work.................... 44 5 Related Projects and Assessment 47 5.1 Projects based on Firefox Extensions............ 47 5.2 Proxy-based projects..................... 51 5.3 Other related projects.................... 52 5.4 Summary of evaluated projects............... 53 II Syndicate Framework 55 Table of Contents ix 6 Concepts and Terminology 57 6.1 Pattern-based individualization............... 57 6.1.1 Content pattern................... 58 6.1.2 Presentation pattern................. 58 6.1.3 Integration pattern.................. 59 6.2 Manifold { The subsequent intention............ 60 6.2.1 Advantages...................... 62 6.2.2 Requirements on the applications.......... 63 6.3 Use cases and basic architecture............... 63 6.4 Terminology.......................... 64 6.5 Involved servers........................ 66 6.6 Architecture principles.................... 66 6.7 Summary........................... 69 7 Syndicate Units 71 7.1 Syndicate components.................... 71 7.1.1 Syndicator and page states............. 72 7.1.2 Syndicate server.................... 72 7.1.3 Mission........................ 75 7.1.4 Mission Patterns................... 75 7.1.5 Mission triggers.................... 76 7.1.6 Properties....................... 77 7.2 Service unit.......................... 78 7.2.1 Service......................... 78 7.2.2 Server detour..................... 78 7.3 Transformer unit....................... 80 7.3.1 Adapter........................ 80 7.3.2 Transformer...................... 80 7.4 Exploration unit....................... 80 7.4.1 Scout......................... 80 7.5 Data access unit....................... 81 7.5.1 Source selector.................... 81 7.5.2 Connector....................... 82 x Table of Contents 7.6 Controlling unit........................ 82 7.7 Output viewer........................ 83 7.7.1 Renderer....................... 83 7.7.2 Injector........................ 83 7.7.3 DOM......................... 83 7.7.4 External programs.................. 84 8 Syndicate Control Flow 85 8.1 Syndication of a page.................... 86 8.2 Mission triggering...................... 87 8.3 Mission activation...................... 88 8.3.1 Local Consigliere................... 88 8.3.2 Remote Consigliere via server detour........ 89 8.3.3 Information gathering with the Scout....... 89 8.3.4 Transformation and Rendering........... 89 8.3.5 Injection........................ 90 III Syndicate as seen by the User 91 9 Mission Publisher 93 9.1 Mission components..................... 93 9.1.1 Summary....................... 93 9.1.2 Implementation.................... 94 9.1.3 Mission Properties.................. 95 9.2 Mission Unpublishing.................... 97 9.3 Publishing workflow..................... 98 10 Mission Subscriber 99 10.1 Mission subscription..................... 99 10.2 Mission selection....................... 99 10.3 Mission unsubscription.................... 100 11 Examples 101 Table of Contents xi 11.1 Presentation Mission examples............... 103 11.1.1 AdRemover...................... 103 11.1.2 TextFieldSize..................... 104 11.1.3 TableSorter...................... 105 11.1.4 FileExtension..................... 105 11.1.5 iTunes......................... 105 11.1.6
Recommended publications
  • An Overview of the 50 Most Common Web Scraping Tools
    AN OVERVIEW OF THE 50 MOST COMMON WEB SCRAPING TOOLS WEB SCRAPING IS THE PROCESS OF USING BOTS TO EXTRACT CONTENT AND DATA FROM A WEBSITE. UNLIKE SCREEN SCRAPING, WHICH ONLY COPIES PIXELS DISPLAYED ON SCREEN, WEB SCRAPING EXTRACTS UNDERLYING CODE — AND WITH IT, STORED DATA — AND OUTPUTS THAT INFORMATION INTO A DESIGNATED FILE FORMAT. While legitimate uses cases exist for data harvesting, illegal purposes exist as well, including undercutting prices and theft of copyrighted content. Understanding web scraping bots starts with understanding the diverse and assorted array of web scraping tools and existing platforms. Following is a high-level overview of the 50 most common web scraping tools and platforms currently available. PAGE 1 50 OF THE MOST COMMON WEB SCRAPING TOOLS NAME DESCRIPTION 1 Apache Nutch Apache Nutch is an extensible and scalable open-source web crawler software project. A-Parser is a multithreaded parser of search engines, site assessment services, keywords 2 A-Parser and content. 3 Apify Apify is a Node.js library similar to Scrapy and can be used for scraping libraries in JavaScript. Artoo.js provides script that can be run from your browser’s bookmark bar to scrape a website 4 Artoo.js and return the data in JSON format. Blockspring lets users build visualizations from the most innovative blocks developed 5 Blockspring by engineers within your organization. BotScraper is a tool for advanced web scraping and data extraction services that helps 6 BotScraper organizations from small and medium-sized businesses. Cheerio is a library that parses HTML and XML documents and allows use of jQuery syntax while 7 Cheerio working with the downloaded data.
    [Show full text]
  • Web Data Extraction
    MASTER THESIS Tom´aˇsNovella Web Data Extraction Department of Software Engineering Supervisor of the master thesis: doc. RNDr. Irena Holubov´a,Ph.D. Study programme: Computer Science Study branch: Theoretical Computer Science Prague 2016 I declare that I carried out this master thesis independently, and only with the cited sources, literature and other professional sources. I understand that my work relates to the rights and obligations under the Act No. 121/2000 Sb., the Copyright Act, as amended, in particular the fact that the Charles University has the right to conclude a license agreement on the use of this work as a school work pursuant to Section 60 subsection 1 of the Copyright Act. In ........ date ............ signature of the author i Title: Web Data Extraction Author: Tom´aˇsNovella Department: Department of Software Engineering Supervisor: doc. RNDr. Irena Holubov´a,Ph.D., department Abstract: Creation of web wrappers (i.e programs that extract data from the web) is a subject of study in the field of web data extraction. Designing a domain- specific language for a web wrapper is a challenging task, because it introduces trade-offs between expressiveness of a wrapper’s language and safety. In addition, little attention has been paid to execution of a wrapper in restricted environment. In this thesis, we present a new wrapping language – Serrano – that has three goals in mind. (1) Ability to run in restricted environment, such as a browser extension, (2) extensibility, to balance the tradeoffs between expressiveness of a command set and safety, and (3) processing capabilities, to eliminate the need for additional programs to clean the extracted data.
    [Show full text]
  • Rich Internet Applications
    Rich Internet Applications (RIAs) A Comparison Between Adobe Flex, JavaFX and Microsoft Silverlight Master of Science Thesis in the Programme Software Engineering and Technology CARL-DAVID GRANBÄCK Department of Computer Science and Engineering CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG Göteborg, Sweden, October 2009 The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Rich Internet Applications (RIAs) A Comparison Between Adobe Flex, JavaFX and Microsoft Silverlight CARL-DAVID GRANBÄCK © CARL-DAVID GRANBÄCK, October 2009. Examiner: BJÖRN VON SYDOW Department of Computer Science and Engineering Chalmers University of Technology SE-412 96 Göteborg Sweden Telephone + 46 (0)31-772 1000 Department of Computer Science and Engineering Göteborg, Sweden, October 2009 Abstract This Master's thesis report describes and compares the three Rich Internet Application !RIA" frameworks Adobe Flex, JavaFX and Microsoft Silverlight.
    [Show full text]
  • Open Source Web GUI Toolkits
    Open Source Web GUI Toolkits "A broad and probably far too shallow presentation on stuff that will probably change 180 degrees by the time you hear about it from me" Nathan Schlehlein [email protected] 1 Why Web Developers Drink... Can't get away with knowing one thing A Fairly Typical Web App... ➔ MySQL – Data storage ➔ PHP – Business logic ➔ Javascript - Interactivity ➔ HTML – Presentation stuff ➔ CSS – Presentation formatting stuff ➔ Images – They are... Purdy... ➔ httpd.conf, php.ini, etc. Problems are liable to pop up at any stage... 2 The Worst Thing. Ever. Browser Incompatibilities! Follow the rules, still lose Which is right? ➔ Who cares! You gotta make it work anyways! Solutions More work or less features? ➔ Use browser-specific stuff - Switch via Javascript ➔ Use a subset of HTML that most everyone agrees on 3 Web Application? Web sites are... OK, but... Boring... Bounce users from page to page Stuff gets messed up easily ➔ Bookmarks? Scary... ➔ Back button 4 Why A Web Toolkit? Pros: Let something else worry about difficult things ➔ Layout issues ➔ Session management ➔ Browser cross-compatibility ➔ Annoying RPC stuff 5 >INSERT BUZZWORD HERE< Neat web stuff has been happening lately... AJAX “Web 2.0” Google maps Desktop app characteristics on the web... 6 Problem With >BUZZWORDS< Nice, but... Lots of flux ➔ Technology ➔ Expectations of technology Communications can get tricky Yet another thing to program... ➔ (Correctly) 7 Why A Web Toolkit? Pros: Let something else worry about difficult things ➔ Communications management ➔ Tested Javascript code ➔ Toolkit deals with changes, not the programmer 8 My Criteria Bonuses For... A familiar programming language ➔ Javascript? Unit test capability ➔ Test early, test often, sleep at night Ability to incrementally introduce toolkit Compatibility with existing application Documentation Compelling Examples 9 Web Toolkits – Common Features ■ Widgets ■ Layouts ■ Manipulation of page elements DOM access, etc.
    [Show full text]
  • Design of a Service-Oriented Dashboard
    DESIGN OF A SERVICE-ORIENTED DASHBOARD by GAYATHRI SUNDAR MURAT M. TANIK, COMMITTEE CHAIR DAVID G. GREEN GARY J. GRIMES JOHN L. HARTMAN IV A THESIS Submitted to the graduate faculty of The University of Alabama at Birmingham, in partial fulfillment of the requirements for the degree of Master of Science BIRMINGHAM, ALABAMA 2007 ii DESIGN OF A SERVICE-ORIENTED DASHBOARD GAYATHRI SUNDAR ELECTRICAL ENGINEERING ABSTRACT Service-Oriented Enterprises are currently focused on offering enhanced user ex- periences to customers, employees, and enterprise partners who use the enterprise’s soft- ware applications. A better user experience is delivered through the presentation of ser- vices and business processes to the user in a composite manner, and by facilitating a bet- ter user-application interaction for the user. Our experience with the bioinformatics do- main helped us to see that although existing models of enterprise portals offer an inte- grated environment to present applications and enterprise resources, they are not suffi- cient to address certain complex user-application interactions. In this thesis, we present a design for a Service-Oriented Dashboard to address this deficiency. The service-oriented dashboard leverages Service-Oriented Architecture to pre- sent an integrated environment to access and interact with the diverse and isolated soft- ware tools, applications, and resources of an enterprise. We address the design of the dashboard at three levels: the presentation layer, the task composition layer, and the ser- vices layer. We introduce in the thesis the notion of describing the user’s job function as a composition of tasks. Users, through this approach, will be able to compose applica- tions according to the user’s tasks.
    [Show full text]
  • Detecting Conflicts Among Declarative UI Extensions
    Detecting Conflicts Among Declarative UI Extensions Benjamin S. Lerner Dan Grossman Brown University University of Washington [email protected] [email protected] Abstract shows a “Hello world” example written in XUL, a simple overlay We examine overlays, a flexible aspect-like mechanism for third- targeting it, and its composition with the base document. Appli- cations like Firefox use this ability heavily to modularize their UI party declarative extensions of declarative UIs. Overlays can be de- fined for any markup language and permit extensions to define new definitions into many smaller documents. Mozilla applications expose the overlay mechanism to third par- content that is dynamically woven into a base UI document. While powerful, overlays are inherently non-modular and may conflict ties and thereby enable a uniquely powerful extension mechanism. Such third party extensions can enhance or modify the program’s with each other, by defining duplicate or contradictory UI compo- nents. We construct an abstract language to capture core overlay se- base functionality in arbitrary ways; overlays are used to integrate mantics, and design an automatic analysis to detect inter-extension the extension’s UI into the existing UI. Moreover, end users can conflicts. We apply the analysis to a case study of Firefox exten- freely install extensions to customize their browser however they sions, finding several real-world bugs. Our analysis provides low- wish. This expressiveness has led to the widespread popularity level feedback to extension developers and high-level reports to end of Firefox extensions—hundreds of millions of users have down- users. Finally, we show how variants of overlays more expressive loaded extensions billions of times [13].
    [Show full text]
  • Leukemia Medical Application with Security Features
    Journal of Software Leukemia Medical Application with Security Features Radhi Rafiee Afandi1, Waidah Ismail1*, Azlan Husin2, Rosline Hassan3 1 Faculty Science and Technology, Universiti Sains Islam Malaysia, Negeri Sembilan, Malaysia. 2 Department of Internal Medicine, School of Medicine, Universiti Sains Malaysia, Kota Bahru, Malaysia. 3 Department of Hematology, School of Medicine, Universiti Sains Malaysia, Kota Bahru, Malaysia. * Corresponding author. Tel.: +6 06 7988056; email: [email protected]. Manuscript submitted January 27, 2015; accepted April 28, 2015 doi: 10.17706/jsw.10.5.577-598 Abstract: Information on the Leukemia patients is very crucial by keep track medical history and to know the current status of the patient’s. This paper explains on development of Hematology Information System (HIS) in Hospital Universiti Sains Malaysia (HUSM). HIS is the web application, which is the enhancement of the standalone application system that used previously. The previous system lack of the implementation of security framework and triple ‘A’ elements which are authentication, authorization and accounting. Therefore, the objective of this project is to ensure the security features are implemented and the information safely kept in the server. We are using agile methodology to develop the HIS which the involvement from the user at the beginning until end of the project. The user involvement at the beginning user requirement until implemented. As stated above, HIS is web application that used JSP technology. It can only be access within the HUSM only by using the local Internet Protocol (IP). HIS ease medical doctor and nurse to manage the Leukemia patients. For the security purpose HIS provided password to login, three different user access levels and activity log that recorded from each user that entered the system Key words: Hematology information system, security feature, agile methodology.
    [Show full text]
  • Open Source Bridge Touchscreen Presentation
    Interactive kiosk display framework Peter Krenesky ([email protected]) Rob McGuire-Dale ([email protected]) http://trac.osuosl.org/touchscreen What is Touchscreen? Interactive kiosk display framework that is: Portable Plugin-based Simple and flexible API Open-source How can Touchscreen be used? Interactive information kiosks How can Touchscreen be used? Public information displays Touchscreen demonstration How we use Touchscreen at the Open Source Lab Technologies in Touchscreen How Touchscreen is built Languages in Touchscreen HTML & CSS JavaScript jQuery (sexy JavaScript library) Raphael (JavaScript SVG graphics library) Python Django (server-side web framework) Twisted (python networking engine) Why not Flash or OpenLaszlo? Original Touchscreen (v1.0) was OpenLaszlo (compiles to Flash) Pros Touchscreen 1.0 Fast Javascript support Could parse XML feeds Cons Niche language poor HTML integration OpenLaszlo has annoying syntax <include href="lib/lzx/screen.lzx" /> <!-- FTP User Map --> <dataset type="http" name="dset_ftpUserMap" src="http://ftp-osl.osuosl.org:8000/"> </dataset> <datapointer xpath="dset_ftpUserMap:/rss/channel" rerunxpath="true"> <method event="ondata"> var label = this.xpathQuery('item[1]/title/text()'); var lat = this.xpathQuery('item[2]/title/text()'); var lon = this.xpathQuery('item[3]/title/text()'); screen_osl_ftpusersmap.createPoint(lat,lon, label); label = null; lat = null; lon = null; </method> </datapointer> <include href="lib/lzx/circle.lzx"/> <resource name="ftpusermap" src="screens/ftpmap/map_1360nolabel.png"/> <include href="screens/ftpmap/ftpusersmap.lzx"/> Why SVG and not canvas? SVG objects can: can be styled with css be manipulated with jQuery receive javascript events Speed Differences SVG better for large objects Canvas better for many smaller objects Conclusion SVG for interactivity Canvas for many animated objects Raphaël: a javascript SVG library provides easy API on top of SVG.
    [Show full text]
  • Design of Imacros-Based Data Crawler and the Behavioral Analysis of Facebook Users
    Design of iMacros-based Data Crawler and the Behavioral Analysis of Facebook Users Mudasir Ahmad Wani Nancy Agarwal Suraiya Jabin Syed Zeesahn Hussain Research laboratory Research laboratory Department of Computer Department of Computer Department Computer Department Computer Science Science Science Science Faculty of Natural Science Faculty of Natural Science Faculty of Natural Science Faculty of Natural Science Jamia Millia Islamia (A Jamia Millia Islamia (A Jamia Millia Islamia (A Jamia Millia Islamia (A Central University) Central University) Central University) Central University) New Delhi, India New Delhi, India New Delhi, India New Delhi, India [email protected] [email protected] [email protected] [email protected] Abstract Obtaining the desired dataset is still a prime challenge faced by researchers while analyzing Online Social Network (OSN) sites. Application Programming Interfaces (APIs) provided by OSN service providers for retrieving data impose several unavoidable restrictions which make it difficult to get a desirable dataset. In this paper, we present an iMacros technology-based data crawler called IMcrawler, capable of collecting every piece of information which is accessible through a browser from the Facebook website within the legal framework which permits access to publicly shared user content on OSNs. The proposed crawler addresses most of the challenges allied with web data extraction approaches and most of the APIs provided by OSN service providers. Two broad sections have been extracted from Facebook user profiles, namely, Personal Information and Wall Activities. The present work is the first attempt towards providing the detailed description of crawler design for the Facebook website. Keywords: Online Social Networks, Information Retrieval, Data Extraction, Behavioral Analysis, Privacy and Security.
    [Show full text]
  • Learning PHP 5 by David Sklar
    Learning PHP 5 By David Sklar Ripped by: Lilmeanman Dedication To Jacob, who can look forward to so much learning. Preface Boring web sites are static. Interesting web sites are dynamic. That is, their content changes. A giant static HTML page listing the names, pictures, descriptions, and prices of all 1,000 products a company has for sale is hard to use and takes forever to load. A dynamic web product catalog that lets you search and filter those products so you see only the six items that meet your price and category criteria is more useful, faster, and much more likely to close a sale. The PHP programming language makes it easy to build dynamic web sites. Whatever interactive excitement you want to create—such as a product catalog, a blog, a photo album, or an event calendar—PHP is up to the task. And after reading this book, you'll be up to the task of building that dynamic web site, too. Who This Book Is For This book is for: • A hobbyist who wants to create an interactive web site for himself, his family, or a nonprofit organization. • A web site builder who wants to use the PHP setup provided by an ISP or hosting provider. • A small business owner who wants to put her company on the Web. • A page designer who wants to communicate better with her developer co-workers. • A JavaScript whiz who wants to build server-side programs that complement her client-side code. • A blogger or HTML jockey who wants to easily add dynamic features to her site.
    [Show full text]
  • Enea® Linux Open Source Report
    Enea® Linux Open Source Report 4.0 Enea® Linux Open Source Report Enea® Linux Open Source Report Copyright Copyright © Enea Software AB 2014. This User Documentation consists of confidential information and is protected by Trade Secret Law. This notice of copyright does not indicate any actual or intended publication of this information. Except to the extent expressly stipulated in any software license agreement covering this User Documentation and/or corresponding software, no part of this User Documentation may be reproduced, transmitted, stored in a retrieval system, or translated, in any form or by any means, without the prior written permission of Enea Software AB. However, permission to print copies for personal use is hereby granted. Disclaimer The information in this User Documentation is subject to change without notice, and unless stipulated in any software license agreement covering this User Documentation and/or corresponding software, should not be construed as a commitment of Enea Software AB. Trademarks Enea®, Enea OSE®, and Polyhedra® are the registered trademarks of Enea AB and its subsidiaries. Enea OSE®ck, Enea OSE® Epsilon, Enea® Element, Enea® Optima, Enea® Linux, Enea® LINX, Enea® LWRT, Enea® Accelerator, Polyhedra® Flash DBMS, Polyhedra® Lite, Enea® dSPEED, Accelerating Network Convergence™, Device Software Optimized™, and Embedded for Leaders™ are unregistered trademarks of Enea AB or its subsidiaries. Any other company, product or service names mentioned in this document are the registered or unregistered trade- marks of their respective owner. Acknowledgements and Open Source License Conditions Information is found in the Release Information manual. © Enea Software AB 2014 4.0 ii Enea® Linux Open Source Report Table of Contents 1 - About this Report .......................................................................................................
    [Show full text]
  • Vector Graphics Computer Science Masters Dissertation
    Vector Graphics to improve BLAST graphic representations by Rafael Jimenez Computer Science Masters Dissertation School of Computer Science University of KwaZulu-Natal December, 2007 Abstract BLAST reports can be complicated. Viewing them graphically helps to understand them better, especially when the reports are long. At present "Web BLAST" and the stand-alone "wwwBLAST" versions, distributed by the NCBI, include graph- ical viewers for BLAST results. An alternative approach is "BLAST Graphic Viewer" developed by GMOD as part of the BioPerl library. It provides a more aesthetically pleasing and informative graphical visualization to represent BLAST results. All the strategies mentioned above are based on the use of bitmap graph- ics and dependent on JavaScript code embedded in HTML. We present Vector Graphic BLAST (VEGRA) a Python object orientated library based on BioPy- thon to yield graphical visualization of results from BLAST utilizing vector graph- ics. Graphics produced by VEGRA are better than bitmaps for illustration, more flexible because they can be resized and stretched, require less memory, and their interactivity is more effective as it is independent of tertiary technologies due to its integration into the graphic. In addition, the library facilitates a definition of any layout for the different components of the graphic, as well as adjustment of size and colour properties. This dissertation studies previous alternatives and improves them by making use of vector graphics and thus allowing more effective presentation of results. VEGRA is not just an improvement for BLAST visualiza- tion but a model that illustrates how other visualization tools could make use of vector graphics. VEGRA currently works with BLAST, nevertheless the library has been written to be extended to other visualization problems.
    [Show full text]