![]() |
Software Information |
|
|
Introducing GRML
Creating a new markup language. Introduction. General Reuse Markup Langauge, or GRML, is a markup language for web browsers. It has the data definition features of character-delimited files and XML, with the hyperlinking and form support of HTML. The purpose of this article is to show why GRML exists and how it complements HTML, XML, RSS, and character-delimited formats. Background. GRML is not the result of a specific plan. It was developed as a solution to another problem, namely reusing data from a web service. It began with the development of a web front-end to request content from a few web services. A data format was needed to handle responses. Having data in some arbitrary format was too limiting. Something formal was needed. HTML and XML were considered, but they did not quite fit the front-end being developed. There needed to be another choice, one with... support for multiple views (the front-end used a List control that has 4);
Since there was no format that met all the requirements, the front-end was going to need something new. Using the front-end, it was possible to develop a format and test it for these requirements. In other words, the front-end existed before the markup language! The format that resulted was GRML. It was designed to use forms and views, supports multiple and multidimensional views, works with existing web servers, and adapts to other formats. Once the markup language was finished, the web front-end became a web browser. Now that the objective for GRML has been explained, the next step is to understand, in detail, why existing formats were not chosen. Understanding Markup Languages. Before going through the process of understanding why GRML is necessary, the existing formats need to be introduced and their design goals identified. The formats are considered from a data handling perspective, so no discussion of games, movies, music, advertising, and entertainment are mentioned. For the purposes of creating a markup language, the two major features for browsing web pages are the form and view. A form contains any input control for user requests. A view displays content, or data from the web page without the markup tags or formatting elements. Given the requirement of the form and view, it is possible to compare each format. HTML is the most prevalent format on the web. It is designed for data display. There is form and view support. XML is a minor format on the web. It is designed for data definition. It lacks form and view support. RSS is a minor format on the web. It is designed for data definition. It lacks form support but has a view. CSV or character-delimited formats are rarely used on the web. It is designed for data definition. It lacks form support but has a view. Now that each format has been introduced, it is possible to understand the place for GRML on the web. Let's begin with... HTML. There is really only one markup language in widespread use on the web (in other words, 99% of all web pages use this language), and that is HyperText Markup Language, or HTML. HTML describes how data is displayed. It tells the web browser how the web page looks in the web browser view. With HTML, all content is displayed in the view, including forms, text, and images. HTML decides how to display the web page. Web page content, using HTML, is defined only for images and hyperlinks. Text content is not defined, making it incompatible to use in other formats. Therefore, adapting HTML content to other formats is the most limited of all formats considered. The single view approach of HTML prevents dynamically switching the content in the view. There is no way to present related sets of HTML content (e.g. 2 different pages from a message board, or 4 different pages of news headlines, or 8 different pages of auction results, etc.) in the view without loading different pages and navigating between them. Hence, HTML does not support multidimensional views. Because HTML decides the web page display, it prevents multiple views of content. HTML does not support multidimensional views and is not easy to adapt to other formats. Also, it combines the form and view in one display. For these reasons, it proved to be an inadequate choice. Next is... XML. XML, or eXtensible Markup Language, is designed for adaptability. Databases, spreadsheets, CSV, or character-delimited files are all potentially able to format their data using XML. It defines what data is, rather than how it is displayed. This makes XML adaptable to other file formats. There is no one XML document format. It is a standard for defining how to structure data. This lack of a specific data format prevents XML from defining any view of its content. It also does not define input controls for use in a form. A lack of view support in XML prevents multiple AND multidimensional views. Without form support, a user is not able to send requests. While XML is adaptable to other formats, it is not an adequate choice. So far, HTML and XML have proven insufficient. The next to consider is... RSS. RSS, or Really Simple Syndication, is a specific data format of a XML data structure. Therefore, RSS is able to support a view of its data. Also, since it is based on XML, it defines its data rather than how it is displayed. View support with data definition means that RSS supports multiple views of its content. As an XML format, RSS lacks any form support. Input controls do not exist using XML, hence are missing from RSS. For this reason, it is not sufficient. Only one format remains, and it is... CSV or character-delimited. CSV (comma separated values) or character-delimited formats are used by databases, spreadsheets, and many other data-oriented applications to store information to file. It is a format that is adaptable to other formats because it does not use any display tags. The format consists almost entirely of content, except for the character used for the delimiter. This format has a view because it is almost entirely content and lacks markup tags. Its focus on content means that it is the most reusable of any format considered. No display tags are used, so it supports multiple views. The lack of data definition tags means there is no way to distinguish between sets of data. Hence, CSV or character-delimited files do not support multidimensional views. In addition, it is not possible to define input controls for a form. This means no form support. Therefore, this format is an insufficient choice. This is why it was necessary to create... GRML. GRML defines the form and view separately. Input controls for a form are defined separately from content used in the view. Also, content is defined explicitly in GRML, with text defined separately from hyperlinks and images. Display tags do not exist in GRML. The web browser decides how to display the web page. This means support for multiple views. Using data definition tags allows GRML to be adaptable to other formats (HTML, XML, RSS, CSV or character-delimited). It also enables different sets of content to be named, which means support for multidimensional views. Conclusion. After considering all the available formats for a markup language, each lacked at least one of the listed requirements. None met the design goals of the web front-end. Therefore, it was necessary to create a new format, GRML. Quick Reference. HTML is used with multi-form, single-view, one dimensional, display-oriented web browsers. GRML is used with single-form, multi-view, multidimensional, data-oriented web browsers. RSS is used with no form, single-view, one dimensional, data-oriented web browsers. About The Author Developing with MFC for a couple of years now. Working at getting my new web browsers just right. Take a look at GRMLBrowser.com. Living in Memphis, TN and it is great coz there are absolutely no major sports teams (well, except for the Grizzlies).
MORE RESOURCES:
Software - Google News |
RELATED ARTICLES
20 Extra Hours Per Week: What Would You Do? While I was in college, if you would have asked me what I would do if I had an extra 20 hours to spend in a week, the first thing I would have told you is that I would definitely NOT spend it studying. I actually would have gone down a long list of hobbies and activities I would like to do if I had the time. Why Java RDBMS? It is a well known fact that Java as a programming language set off a new paradigm in the software industry. Suddenly, every software programmer worth his salt was amidst software jargons like 'Platform-Independence', 'Cross-Platform-Deployment' and 'The Java Virtual Machine'. Cisco Certification: Introduction To ISDN, Part IV In part III of this ISDN primer, we learned that PPP has two main methods of authentication that Cisco certification candidates need to know how to configure: PAP and CHAP.PAP has very few advantages over CHAP. An Easy Way to Develop JAVA Enterprise Applications Research bears that less than 70 percent of development projects are actually completed, and more than half come in late and over budget. AlachiSoft TierDeveloper is a Rapid Application Development tool that helps Software Developers do better, more creative, and useful work by reducing redundant hand coding. Software Piracy - Global Increase Pirated software is on the increase and now accounts for over one third of the software installed on the world's computers and it's cost the software industry a staggering, $28bn (£12bn) last year in lost revenues. That's the startling claim of the UK based, Business Software Alliance. Know-how in Microsoft Publisher For those who still don't know, Microsoft Publisher helps computer users to easily create, customize and publish materials such as flyers, brochures, catalogs, newsletters and websites. It provides tools to create professional and compelling marketing materials that will help you take your business further. Artificial Intelligence And Intuition The intuitive algorithm.Roger Penrose considered it impossible. Microsoft CRM Implementation - Fundamental CRM Principles Revision Microsoft CRM is relatively new player on the now becoming traditional CRM software applications market. We would like just to mention shift in the technical conception - Microsoft CRM is committed to Windows and Microsoft components: Exchange, Active Directory, SQL Server, etc (while traditional CRM applications, such as Siebel were biased toward multiplatform compatibility: Unix, Oracle, Windows, SQL Server) and move up to business logic paradigm shift. Hubris - Definition: Microsofts Passport Before September of 1995, Microsoft ignored the Internet because their 16-bit Windows 3.1 operating system couldn't handle the 32-bit Internet world. Lotus Notes Domino and Microsoft CRM Integration Well, even if the combination might look very unusual, we see the coexistence of these two systems, especially in large corporations, non-profit organizations. Technically Lotus Notes Domino has parallel structure, including Domino email server. HSphere Control Panel Tips and Tricks - Power At Your Fingertips: Part 1 The first topic we are going to discuss is email. HSPHERE (the software running the control panel) offers many useful functions including mail forwarding, auto responders and a mail list manager. Microsoft CRM or Siebel Siebel is traditional CRM market leader, however and mostly due to recession 200-2003, Siebel lost sizable portion of CRM market to new tiger, such as Microsoft CRM. Microsoft CRM s recent (2001) CRM answer from Microsoft and attempt top get market share from traditional vendors: Siebel, Oracle, Onyx. Microsoft Great Plains Nationwide Remote Support ERP Consulting industry is on the way to serve clients nationwide and even worldwide, when the client is multinational corporation. There are several reasons to specialize in remote support. Lotus Domino/Notes - Microsoft Great Plains Tandem as ERP with Documents Workflow - Overview for IT Lotus Domino/Notes - Microsoft Great Plains tandem as ERP with Documents Workflow - overview for IT SpecialistMicrosoft Business Solutions has the whole spectrum of business applications, the good combination seems to be Microsoft Great Plains and Microsoft CRM. However we need to admit that Microsoft is relatively new in the CRM market and also for large corporation it could not be a good idea "to put all the eggs into one basket". Microsoft C# vs. VB.Net Hi, Guys,I believe a lot of programmers are trying to speculate which Microsoft language is the language of the future .Net applications. Linux - Keyboard Or Mouse Just stress testing one of the latest Linux distributions. Been testing it for about two months. Software Companies: Generate New Revenue Streams and Decrease Costs with Custom e-Learning Content It's no secret that software companies operate in a very competitive space where rivalry is increasingly fierce and where profit margins can be razor thin. New, smaller software companies are sprouting up each month and the leading software companies continually make strong advancements forward leveraging massive cash flow reserves. 25 Things Mapping Software Can Do For You 1. With mapping software you can create a report that tracks your retirement plan for you. How to Make Own CMS Every day millions of new web documents emerge on the Internet, and the amount of web management tools is growing simultaneously. These tools are usually referred to as Content Management Systems, CMS for short. MultiNational Corporation ERP Implementation - Microsoft Business Solutions Great Plains If you look back to the history, you will see that ERP for large publicly traded company had to be built upon very reliable hardware (more likely non-Intel hardware: mainframe, Sun sparc, etc.), powerful database platform: Oracle, DB2, Ingress, Sybase and reliable OS: UNIX. |
|
Home | Site Map | 101InfoLinks.com | Best Book Shop | Sports Fans ONLY
.
|
| © 2007 |