OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   XML behind XMLBars

[ Lists Home | Date Index | Thread Index ]
  • From: "Ogievetsky, Nikita" <nikita.ogievetsky@csfb.com>
  • To: "'xml-dev@ic.ac.uk'" <xml-dev@ic.ac.uk>
  • Date: Tue, 2 Mar 1999 14:16:29 -0500

Hi everybody, 
Let me present to the community XMLBars: XML driven menu bars. I intended it
to serve as a simple and visually perceivable example of using XML to
facilitate web design issues. Seems that it turned into a nice web GUI tool.
I would highly appreciate your judgment and critique. Your contribution is
very welcome.

Here is my sin: Namespaces are used to point to document fragments
collection (rather then element definitions)
Why not? It is more convenient for me to say <group ref:id=""> then to use
XPointer or Entity:
		It is easier for people to read (not only parsers matter). 
		By changing namespace ( URN ) all the references defined
with its alias will change automatically. 
It is also great for internalization. And, of course, I can define multiple
namespaces of fragments. The fact that URN doesn't have to be a real URL
makes the possibilities even greater.

-----------------
XML behind XMLBars    Menu Markup Language, if I may :) 

Menu bar rendering and formatting information is stored in XML and cashed in
DOM by a parser. Submenus are rendered only when parent menu is activated.
Action to be fired on a menu click event is also stored in XML. Action can
be a Link to a web page or a chunk of 
JavaScript code. It can also be a Sub-Action. In this case child menu
inherits parents action. 
Action can be parameterized. For example in the following fragment
<MENU>
		<DESC>xml-dev archive</DESC>
		<LINK>
	
http://www.lists.ic.ac.uk/hypermail/xml-dev/<PAR name="year"><PAR
name="month">/index.html
		</LINK>
<SUBMENU>
	<DESC>1999</DESC>
		<SUBACTION>
			<SUB name="year">99</SUB>
		</SUBACTION>
		<SUBMENU>
			<DESC>January</DESC>
				<SUBACTION>
					<SUB name="month">01< /SUB>
				</SUBACTION>
		</SUBMENU>
		<SUBMENU>
			<DESC>February</DESC>
				<SUBACTION>
					<SUB name="month">02</SUB>
				</SUBACTION>
		</SUBMENU>
</SUBMENU>
</MENU>

two leaf submenus when clicked will point to:
http://www.lists.ic.ac.uk/hypermail/xml-dev/9901/index.html
and
http://www.lists.ic.ac.uk/hypermail/xml-dev/9902/index.html

Most of magazines and monthly publications have similar structure. Reusable
group of 12 submenu -months will help. The 3 years of XML-DEV archive will
be as short as:
<MENU>
		<DESC>xml-dev archive</DESC>
		<LINK>
	
http://www.lists.ic.ac.uk/hypermail/xml-dev/<PAR name="year"><PAR
name="month">/index.html
		</LINK>
<SUBMENU>
	<DESC>1999</DESC>
		<SUBACTION>
			<SUB name="year">99</SUB>
		</SUBACTION>
		<SUBMENU>
			<SUBMENUGROUP ref:id="12months" xql:select="./SUB
$le$ '04'">
		</SUBMENU>
</SUBMENU>
<SUBMENU>
	<DESC>1998</DESC>
		<SUBACTION>
			<SUB name="year">98</SUB>
		</SUBACTION>
		<SUBMENU>
			<SUBMENUGROUP ref:id="12months">
		</SUBMENU>
</SUBMENU>
<SUBMENU>
	<DESC>1997</DESC>
		<SUBACTION>
			<SUB name="year">97</SUB>
		</SUBACTION>
		<SUBMENU>
			<SUBMENUGROUP ref:id="12months " xql:select ="./SUB
$ge$ '04'">
		</SUBMENU>
</SUBMENU>
</MENU>

The second optional attribute xql:select will filter first 4 months for
current year and months starting with February for the year 1997.
XMLBars implemented using IE5beta parser can be found at
http://www.cogx.com/XMLBar.
(Sorry, still working on cross-browser implementation).


Nikita Ogievetsky
Cogitech Inc.
http://www.cogx.com

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS