3 ], function(smartxml) {
9 var isMetaAttribute = function(attrName) {
10 return attrName.substr(0, 5) === 'meta-';
15 var WLXMLElementNode = function(nativeNode, document) {
16 smartxml.ElementNode.call(this, nativeNode, document);
18 WLXMLElementNode.prototype = Object.create(smartxml.ElementNode.prototype);
20 $.extend(WLXMLElementNode.prototype, smartxml.ElementNode.prototype, {
21 getClass: function() {
22 return this.getAttr('class');
24 getMetaAttributes: function() {
26 this.getAttrs().forEach(function(attr) {
27 if(isMetaAttribute(attr.name)) {
28 toret[attr.name.substr(5)] = attr.value;
33 getOtherAttributes: function() {
35 this.getAttrs().forEach(function(attr) {
36 if(attr.name !== 'class' && !isMetaAttribute(attr.name)) {
37 toret[attr.name] = attr.value;
45 var WLXMLDocument = function(xml) {
46 smartxml.Document.call(this, xml);
48 WLXMLDocument.prototype = Object.create(smartxml.Document.prototype);
49 $.extend(WLXMLDocument.prototype, {
50 ElementNodeFactory: WLXMLElementNode
55 WLXMLDocumentFromXML: function(xml) {
56 return new WLXMLDocument(xml);
59 WLXMLElementNodeFromXML: function(xml) {
60 return this.WLXMLDocumentFromXML(xml).root;