|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: [SUMMARY #1] Why is there little usage of XML on the'vi
Hello Juan, Juan said: Yes XML has no concept of multimarkup, but XML people would search a way to _simulate_ this so much as posible since i think it will become a fundamental feature when markup languages explosion (i believe that current 600 XML languages are just the beginning). Didier replies: A lot of languages based on XML were developed but few have practical interpreters associated to them. For instance, CML has several interpreters able to translate elements of the language into visible objects. XBRL has several interpreters able to process the language elements into spreadsheets and more elaborate models (for stock picking). A language based on XML becomes useful when processors are also provided with it; otherwise it is only the result of some spare glucose metabolism and not a useful tool :-) If you count XML based languages having a set of interpreters made available for public consumption, the number of 600 is reduced to less than 50 (and I am overly optimist here) Juan said: I do not understand you. Yes visually both <p> and <div> are not differentiable (unless specific styles), but the DOM tree is able to differentiate both. You can in source-view that both are retained when the page loaded. Didier replies: Juan, the DOM is only an interface to something else. It's an abstraction or a facet offered for public consumption, it's not the object per se. A DOM is a public interface but behind the curtain you have something else. For example, in the Gecko engine, each HTML element is translated (i.e. interpreted) into a visual object. Idem for IE. Visual objects have several properties set by either HTML element attributes like for instance the width or height (when available) or set by CSS properties. Thus, the real object presenting a DOM interface is a lot more than the DOM. It's a set of methods and properties some made public like the DOM some made private. It is also an area laid on a 2D layout, hence the notion of visual object. In the case of VoiceXML, the result of the interpretation is sound. Hence the notion of aural objects placed in a time sequence. The real object keeps some properties like the element tag, this is why we can retrieve its origin. But also, at least in the case of IE, if you request a serialization of its current state you'll get all properties attached to the object. The ones defined as attribute in declarative code (for the browser an HTML document is declarative code) and the one dynamically attached to the object at run-time. <div> and <p> inherit from the same "block area" object and the object inheriting the "block area" features add some properties and methods, they may be different though even they are both a "block area". The world as seen by the browser is clearer when seen through its own perspective or the object oriented perspective. For a browser an HTML element is no longer and solely an HTML element, it became something else an aggregation of different things {a visual object, a DOM object, an ECMAScript object, etc...} At run-time and within a browser an HTML is a lot more than specified at first in with markups. Juan said: Yes, but one is forced to use the available constructs and cannot be combined and extended. By combined i do not mean a mized datument with XHTML as host language and MathML and SVH islands in different namespaces but i explained above with multimarkup and reuse. By extension i mean that one of ironies of the eXtensible language per excellence today (XML) is being it does not adressed the extensibility at the client side, only at the author side. I can extend SVH or HTML inventing new tags but none browser will understand them. I do not think that was a problem of the browser community, i think it is one of main design errors of XML. Didier replies: XSLT can be perceived as a general purpose XML interpreter. It allows you to assemble different XML documents into a single one, have different interpretation strategies for each fragment or vocabulary. For instance, I can add new vocabularies to an XHTML document and provide an XSLT template that will use other template/interpreter for other vocabularies I am including in the XHTML document. This way, the language becomes eXtensible. Juan said: Both the Java-plugin and the X3D-like approach may be suitable for addition of small extensions or semantic layers) over a common basis. In fact i think that main interest of the CML comunity (I wait prof. Murray-Rust can correct me if wrong) is in adding the need funcionality/extensions for the processing of CML units encoded on a host language, probably XHTML based. Didier replies: Could be done and with some help from your community I can bring my modest contribution. Juan said: Interesting! Do you mean some kind of automatic quality-check of the client browser or what? Someting like the common bottom line in many sites: this site is better display with ... you need JS enabled ... but in the heading of the doc. Didier replies: Yes this is what I mean. In the last project I was working on for several years and that was maybe the most ambitious AJAX based project I came to the conclusion that what is needed in an intelligent interpreter. In many cases, the system was not responding because the pre-conditions weren't met and no intelligent message was provided to the users. So I started to display messages about what the engine is doing, then I still got the same precondition errors when, for example, the users disabled the javascript option. So, I am updating the engine with a new algorithm a) check pre-condition: for example, the very first condition for the engine to run is to have javascript enable. If not, the engine should display an error message and a procedure for users to set the javascript to on or make this site as "trusted". So, not only providing an error message but also indicating what to do. Same thing if the java VM is disabled, etc... This is why I came to the conclusion that an environment has to be defined for a proper interpretation (an interpretation being in my case a rendition). Based on this definition, the layer provided for the datument can check if the latter can survive in this host. If not, at least the user is made aware of what is wrong and what to do. Cheers Didier PH Martin http://didier-martin.com
|
Purchase Stylus Studio Online Today!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||






