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).
|
RELATED ARTICLES
What You Should Know About Installing Screensavers Do you remember that frustrating feeling when you find an interesting screensaver and can't install it on your computer? This article will help you to never have it again. Configure Windows Indexing Service for Performance The Windows Indexing Service provides you with the ability to perform advanced searches on directories located on your computer and on shared directories on the network. The Indexing Service was introduced with IIS (Internet Information Services) and is now installed with Windows 2000 and Windows XP. Microsoft CRM Implementation - US Market Lessons Microsoft CRM is CRM answer from Microsoft Business Solutions. If you compare it to other traditional CRM applications, such as Siebel - you will see that Microsoft CRM does use all the resent Microsoft technologies, that means that Microsoft targets its CRM to Windows market exclusively, plus this means that Microsoft CRM is more difficult in its installation. Microsoft doesn't even have to care about other platforms, such as Linux/Unix or Apple. Now - we see kind of paradoxical situation when Microsoft CRM is gaining market share even in recession and early post-recession time. Where is the secret? Microsoft Great Plains Customization: Project Organization ? International Business Example Microsoft Business Solutions Great Plains fits to majority of horizontal niches and clientele in the USA, Canada, Mexico, Latin America, U.K., Brazil, South Africa, Australia, New Zealand and Middle East. If you are project organization: Real Estate, Law Firm, Placement Agency with permanent clients, Construction or Freight Forwarding company ? you probably use or plan to deploy Project management or Project accounting extension for Microsoft Great Plains. If you have your business in one country ? this work relatively simple, however we see clients, involved into international business, when your headquarters is located in the US for example and offices and locations are in Mexico. Let's look at your options: Software Engineering: An Introduction Software Engineering is the Systematic Approach for analysis design implementation and maintenance of Software .It involve the use of Case tools. Computer software is the product that Software Engineers design and develop and virtually every one in the industrialized world use it and is important because it effects nearly every aspect of our lives and has became needy in commerce, culture and our every day life. How To Identify, Cure and Prevent Spyware/Adware Infections Just when you thought you were Web savvy, one more privacy, security, and functionality issue crops up - spyware. Installed on your computer without your consent, spyware software monitors or controls your computer use. It may be used to send you pop-up ads, redirect your computer to websites, monitor your Internet surfing, or record your keystrokes, which, in turn, could lead to identity theft. The Death of Windows I have always regretted how Microsoft price gouges and rips off computer users. I really regret Windows XP activation. I have always intended to convert to Linux, but it isn't easy for a Windows user since version 3.0. The True Meaning of Freeware The vast majority of us will have, at some point, had freeware games or applications installed on our systems. If you've played an online Java or Flash based game, you've used freeware. In a very real way the Internet itself is freeware, a massive collections of scripts, information, tools and resources that are, for the most part, totally free. But what is it that motivates so many people to put so much work into a project, and then release it totally free of charge? There are a few misconceptions about freeware that I would like to clear up. Increase Office Efficiency With One Simple Tool When you need a phone number, you do a quick search on the Internet and in a few seconds, you've got the information you need. And you probably receive a lot of contact information right inside the emails you receive every day. Both methods are by far more convenient than using those white or yellow-colored telephone directories. Daffodil DB: Web Database What is a Web Database? 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 Specialist Microsoft Navision and Crystal Reports - An Overview Microsoft Business Solutions ? Navision is an integrated solution for small and midsize companies looking to expand their business operations without much interruption to its existing processes. Microsoft Navision enables businesses to alter as much or as little of its existing system, integrate add-ons and vertical segments of its development. It integrates every aspect of your organization, from customers to suppliers, from accounting to supply chain, increasing your productivity and competitive edge. Microsoft Navision has an open environment architecture making it fully customizable and easy to use and maintain. It can also be implemented rapidly so that there is only a minimal disruption to business operations. Microsoft Great Plains: Getting New Users Licenses ? Annual Service Plan FAQ Microsoft Business Solutions Great Plains, Solomon, Navision, Axapta, Microsoft CRM require existing customer to be on active service contract: enhancement program. Minimal maintenance plan gives you free new software version (however upgrade itself, if it is done by your MBS partner is not free). If you are outside of USA/Canada: Mexico, South America, UK, South Africa, France, Australia, New Zealand ? you may have different promotion campaigns and might be not required to be on the service contract. In this article we assume that you are US/Canadian client. DB Integration - Software for Combine MS Access Databases Our company, Novaprof Inc., developed unique software - DB Integration. This software makes it possible to integrate two databases of *.mdb format. An integration, in this case, is combining the objects of two databases. Software features. The Opera Alternative Security flaws have long plagued Internet Explorer (IE), the market-dominating web browser from Microsoft. IE won the early browser wars, not only because it was free and bundled with Windows, but because it had some features and capabilities that its only real competitor, Netscape, didn't have. But the behind-the-scenes programming that makes those features possible is the very coding that also leaves wide gaps in IE's defenses against viruses and malicious scripting. Among several browser alternatives for Windows users, the Opera browser stands out in functionality and integration, and is gaining a wider following as a safer surfing alternative to Internet Explorer. Reporting Tools for Microsoft Great Plains ? Overview For Developers Looks like Microsoft Great Plains becomes more and more popular, partly because of Microsoft muscles behind it. Now it is targeted to the whole spectrum of horizontal and vertical market clientele. Small companies use Small Business Manager (which is based on the same technology ? Great Plains Dexterity dictionary and runtime), Great Plains Standard on MSDE is for small to midsize clients, and then Great Plains serves the rest of the market up to big corporations. There are several reporting tools available and you definitely need to know which one to use for different types of reports. 10 Things You Can Do With Photoshop CS2 That You Couldnt Do Before Now Is Photoshop CS2 worth the upgrade? You bet it is! Here are just 10 things you can do with this fantastic new version of Photoshop that were impossible (or difficult) to do with previous versions: What is Shareware? Shareware is software that you can try before you buy; shareware is a kind of marketing method for software. Software developers post trial versions of their software on websites. Consumers can then download the trial version to their computer and evaluate it. If the consumer likes the software they can purchase it. Shareware is also called try before you buy. Ukraine IT Myths Dispersed While Ukraine is becoming a new popular IT outsourcing destination, there are still many myths about it and no clear understanding of the opportunities outsourcing to Ukraine can present. Let us look closely at some of those myths and find out whether there is any truth behind them. The XP Firewall Isnt Enough Every computer that connects to the internet has an IP address. This is like a sort of phone number, and is issued either to an individual computer or to a "gateway" that connects a private network to the 'net. |
home | site map |
© 2005 |