OpenLink AJAX Toolkit
Encyclopedia
OpenLink AJAX Toolkit is a JavaScript-based toolkit
for browser-independent Rich Internet Application
development. It includes a rich collection of UI Widgets/Controls, Event Management
System, and a truly platform independent Data Access Layer
called AJAX
Database Connectivity
. OpenLink AJAX Toolkit is fully OpenAjax Alliance Conformant.
, and ADO.NET
, it uses XMLA to facilitate direct and platform independent access to remote database engines via XMLA providers.
As a core component of OAT, the Ajax Database Connectivity layer enables:
that include:
JavaScript library
A JavaScript library is a library of pre-written JavaScript which allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies....
for browser-independent Rich Internet Application
Rich Internet application
A Rich Internet Application is a Web application that has many of the characteristics of desktop application software, typically delivered either by way of a site-specific browser, via a browser plug-in, independent sandboxes, extensive use of JavaScript, or virtual machines...
development. It includes a rich collection of UI Widgets/Controls, Event Management
Event-driven programming
In computer programming, event-driven programming or event-based programming is a programming paradigm in which the flow of the program is determined by events—i.e., sensor outputs or user actions or messages from other programs or threads.Event-driven programming can also be defined as an...
System, and a truly platform independent Data Access Layer
Data access layer
A data access layer is a layer of a computer program which provides simplified access to data stored in persistent storage of some kind, such as an entity-relational database....
called AJAX
Ajax (programming)
Ajax is a group of interrelated web development methods used on the client-side to create asynchronous web applications...
Database Connectivity
Database connection
A database connection is a facility in computer science that allows client software to communicate with database server software, whether on the same machine or not. A connection is required to send commands and receive answers....
. OpenLink AJAX Toolkit is fully OpenAjax Alliance Conformant.
Functionality
There is a broad range of functionality in OAT including information visualization, GUI Widgets and Database ConnectivityInformation Visualization
There are many different ways of visualizing data using OAT, these include:- Charts such as Line chartLine chartA line chart or line graph is a type of graph, which displays information as a series of data points connected by straight line segments. It is a basic type of chart common in many fields. It is an extension of a scatter graph, and is created by connecting a series of points that represent...
, Pie chartPie chartA pie chart is a circular chart divided into sectors, illustrating proportion. In a pie chart, the arc length of each sector , is proportional to the quantity it represents. When angles are measured with 1 turn as unit then a number of percent is identified with the same number of centiturns...
and Bar graph. - Grid viewGrid viewA grid view or a datagrid is a graphical user interface element that presents a tabular view of data. A typical grid view also supports some or all of the following:* Clicking a column header to change the sort order of the grid...
. - Pivot tablePivot tableIn data processing, a pivot table is a data summarization tool found in data visualization programs such as spreadsheets or business intelligence software. Among other functions, pivot-table tools can automatically sort, count, total or give the average of the data stored in one table or spreadsheet...
.
File System Interaction
- WebDAVWebDAVWeb-based Distributed Authoring and Versioning is a set of methods based on the Hypertext Transfer Protocol that facilitates collaboration between users in editing and managing documents and files stored on World Wide Web servers...
Browser enables you to navigate a WebDAV instance as if it were a local filesystem. - An Upload Interface supporting batch uploads.
Graphical User Interface Widgets
There are many Widgets in OAT to ease development of application User Interfaces, including:- Combo Boxes, Combo Lists, Combo Buttons.
- "Quickedit" -- simple editing without text-box input.
- Sliders, Date Pickers and Color Pickers.
- "Enhanced Anchors" enabling you to show a new widget on screen.
- "Ghost drag" enabling the user to drag one item onto another and update objects accordingly. For example, this is quite useful for dragging items into a shopping cart.
Semantic Web and Aggregated Data Visualization
OAT is also able to cleanly visualize:- RDFResource Description FrameworkThe Resource Description Framework is a family of World Wide Web Consortium specifications originally designed as a metadata data model...
Data as a graph. - RSSRSS-Mathematics:* Root-sum-square, the square root of the sum of the squares of the elements of a data set* Residual sum of squares in statistics-Technology:* RSS , "Really Simple Syndication" or "Rich Site Summary", a family of web feed formats...
Feeds.
AJAX DataBase Connectivity
Provides a database independent data access layer for OAT and other JavaScript based libraries/frameworks/toolkits. The JavaScript equivalent of ODBC, JDBC, OLE DBOLE DB
OLE DB is an API designed by Microsoft for accessing data from a variety of sources in an uniform manner. It is a set of interfaces implemented using the Component Object Model ; it is otherwise unrelated to OLE...
, and ADO.NET
ADO.NET
ADO.NET is a set of computer software components that programmers can use to access data and data services. It is a part of the base class library that is included with the Microsoft .NET Framework. It is commonly used by programmers to access and modify data stored in relational database systems,...
, it uses XMLA to facilitate direct and platform independent access to remote database engines via XMLA providers.
As a core component of OAT, the Ajax Database Connectivity layer enables:
- Development and usage of data bound controls such as the Google MapsGoogle MapsGoogle Maps is a web mapping service application and technology provided by Google, free , that powers many map-based services, including the Google Maps website, Google Ride Finder, Google Transit, and maps embedded on third-party websites via the Google Maps API...
, Yahoo! MapsYahoo! MapsYahoo! Maps is a free online mapping portal provided by Yahoo!.-News:*On May 16, 2007, Yahoo! released a new map style designed by the cartography company...
, Microsoft Virtual Earth, and OpenLayersOpenLayersOpenLayers is an open source JavaScript library for displaying map data in web browsers. It provides an API for building rich web-based geographic applications similar to Google Maps and Bing Maps...
mapping services controls, Pivot Tables, Comb Boxes, TimeLines, and many more. - Development of data aware applications with the ability to calibrate change sensitivity via support for scrollable cursors (detached row-sets that are change sensitive)
- Build a complex SQLSQLSQL is a programming language designed for managing data in relational database management systems ....
, XMLXMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
, SPARQLSPARQLSPARQL is an RDF query language; its name is an acronym that stands for SPARQL Protocol and RDF Query Language. It was made a standard by the RDF Data Access Working Group of the World Wide Web Consortium, and considered as one of the key technologies of semantic web...
, Web Services based applications without exposure to data access complexity
Miscellaneous
Other controls include:- "Tree control" -- a content tree system where nodes can be expanded and collapsed.
- "Dock" -- a drag and drop widget feature similar to the movable iGoogle Gadgets.
- "Ticker" -- a ticker system reminiscent of Stock Ticker Machines.
- "FishEye" -- an Eye candyEye candyEye candy may refer to:*Attractiveness*Eye Candy , an album by Mis-Teeq*software "Eye Candy", a plugin for Adobe Photoshop and Adobe Fireworks that adds new filter effects*"Eye Candy", an episode of the animated series Happy Tree Friends...
Icons SystemIcon (computing)A computer icon is a pictogram displayed on a computer screen and used to navigate a computer system or mobile device. The icon itself is a small picture or symbol serving as a quick, intuitive representation of a software tool, function or a data file accessible on the system. It functions as an...
which is similar to the Mac OS XMac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
Dock SystemDock (computing)The Dock is a prominent feature of the graphical user interface of the Mac OS X operating system. It is used to launch applications and switch between running applications...
. - "Timeline" -- a system which allows you to plot data onto a TimelineTimelineA timeline is a way of displaying a list of events in chronological order, sometimes described as a project artifact . It is typically a graphic design showing a long bar labeled with dates alongside itself and events labeled on points where they would have happened.-Uses of timelines:Timelines...
interface. - "OS-Styled Windows" -- automatically recognizing which Operating systemOperating systemAn operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
the user is using, OAT adjusts the Graphical User InterfaceGraphical user interfaceIn computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
widgets it generates to match the local environment. - CryptographyCryptographyCryptography is the practice and study of techniques for secure communication in the presence of third parties...
.
Technical Information
Built-in functions are able to natively use/manipulate the following technologies:- JSONJSONJSON , or JavaScript Object Notation, is a lightweight text-based open standard designed for human-readable data interchange. It is derived from the JavaScript scripting language for representing simple data structures and associative arrays, called objects...
- Resource Description Framework (RDF)Resource Description FrameworkThe Resource Description Framework is a family of World Wide Web Consortium specifications originally designed as a metadata data model...
(including parsers for RDF/XMLRDF/XMLRDF/XML is a syntax, defined by the W3C, to express an RDF graph as an XML document. According to the W3C, "RDF/XML is the normative syntax for writing RDF"....
and TurtleTurtle (syntax)Turtle is a serialization format for Resource Description Framework graphs. A subset of Tim Berners-Lee and Dan Connolly's Notation3 language, it was defined by Dave Beckett, and is a superset of the minimal N-Triples format. Unlike full N3, Turtle doesn't go beyond RDF's graph model...
) - RSSRSS-Mathematics:* Root-sum-square, the square root of the sum of the squares of the elements of a data set* Residual sum of squares in statistics-Technology:* RSS , "Really Simple Syndication" or "Rich Site Summary", a family of web feed formats...
- Scalable Vector Graphics (SVG)Scalable Vector GraphicsScalable Vector Graphics is a family of specifications of an XML-based file format for describing two-dimensional vector graphics, both static and dynamic . The SVG specification is an open standard that has been under development by the World Wide Web Consortium since 1999.SVG images and their...
- SOAPSOAPSOAP, originally defined as Simple Object Access Protocol, is a protocol specification for exchanging structured information in the implementation of Web Services in computer networks...
- SPARQLSPARQLSPARQL is an RDF query language; its name is an acronym that stands for SPARQL Protocol and RDF Query Language. It was made a standard by the RDF Data Access Working Group of the World Wide Web Consortium, and considered as one of the key technologies of semantic web...
- SQLSQLSQL is a programming language designed for managing data in relational database management systems ....
- XMLXMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
Use
OAT is used extensively in the OpenLink Data Spaces and a variety of front-ends to the Virtuoso Universal ServerVirtuoso Universal Server
Virtuoso Universal Server is a middleware and database engine hybrid that combines the functionality of a traditional RDBMS, ORDBMS, virtual database, RDF, XML, free-text, web application server and file server functionality in a single system...
that include:
- RDF Browser 2
- RDF Browser
- Interactive SPARQL Query Builder (iSPARQL)
- Web Forms Designer
- Database Designer
- Interactive "Query By Example" SQL Query Builder
External links
- Official OAT website includes more information, demos and downloads.
- OpenAjax Alliance website includes more information about OpenAjax Conformance.