- From: L2L 2L <emanuelallen@hotmail.com>
- Date: Tue, 22 Jul 2014 01:53:53 -0400
- To: www-ql@w3.org
- Message-ID: <BAY402-EAS1442C3D46FB097C9A20C0CBDEF10@phx.gbl>
Revive E4X as EXQO(ECMA-Script's XML Query Object) with SAX added on as methods for the xml object.
With an added method call xPath();
Xml file to be use:
<note>
<date>2002-08-01</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Example:
//E4X spec.
var xmlDoc=new XML();
xmlDoc.load("note.xml");
document.write(xmlDoc.body);
//please look at the bottom for a corresponding to this.
//output body text value
Example:
//with added xPath() method
var xmlDoc=new XML();
xmlDoc.load("note.xml");
document.write(
xmlDoc.xPath("//body");
//relative path expression
);
Example:
var xmlDoc=new XML();
xmlDoc.load("note.xml");
document.write(
xmlDoc.xPath("/note/body");
//absolute path expression
);
This will gain attention to the ease of navigating the dom. Also the other goal is to point to xQuery as a server scripting alternative to popular server side scripting such as php.
//thoughts on the E4X spec.
//the e4x spec of the look at this make it to where the root element is the container for the object return.
I feel, this should lean more to JSON type syntax:
var xmlDoc = {
note:[
{date:"2002-08-01"},
{to:"Tove"},
{from:"Jani"},
{heading:"Reminder"},
{body:"Don't forget me this weekend!"}
]}
document.write(
xmlDoc.note[4].body);
So let's say we do the same for the spec to make it more... Easy to compose a new spec with.
The dom or really htmlelementobject API and documentobject API both have methods for manipulating the xml/html.
It stand to reason to mimic those feature via JSON.
As so:
var xmlDoc=new XML();
xmlDoc.load("note.xml");
document.write(xmlDoc.note[4].body);
And again with the xPath(/*expression*/); //method
var xmlDoc=new XML();
xmlDoc.load("note.xml");
document.write(
xmlDoc.xPath("/note/body")
);
For the first spec, I say to use only xPath 1.0
With attribute, I say to use the xPath(/*expression*/); method to retrieve that via string:
<date attr="value">
2002-08-01
</date>
xmlDoc.xPath("/note/@attr");
//xPath 1.0 spec
);
to make the spec easier to adopt.
Making this appliance to "use strict";
I say to make a new statement declaration:
"use EXQO"; or "use ESXQO";
Use JSON syntax when it comes to the EMCAScript environment.
Use xPath(/*expression*/); for all non EMCAScript environment expression, and syntax.
Note that this version may receive further editing in the future.
Thank you for reading.
E-S4L
Received on Tuesday, 22 July 2014 05:54:24 UTC