{"versions":{"0.1.7":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.7","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"1.1.4"},"devDependencies":{"whiskey":"0.8.x"},"license":"Apache-2.0","gitHead":"1e9496379f6a1072e2b817f51a296f7cd9f07e43","bugs":{"url":"https://github.com/racker/node-elementtree/issues"},"_id":"elementtree@0.1.7","_shasum":"9ac91be6e52fb6e6244c4e54a4ac3ed8ae8e29c0","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.5.0","_npmUser":{"name":"anonymous","email":"michael@mirwin.net"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"dist":{"shasum":"9ac91be6e52fb6e6244c4e54a4ac3ed8ae8e29c0","size":16197,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.7.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/elementtree-0.1.7.tgz_1485230431723_0.19623595383018255"},"publish_time":1485230433551,"_cnpm_publish_time":1485230433551,"_hasShrinkwrap":false},"0.1.6":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.6","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.3.5"},"devDependencies":{"whiskey":"0.8.x"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"bugs":{"url":"https://github.com/racker/node-elementtree/issues"},"_id":"elementtree@0.1.6","dist":{"shasum":"2ac4c46ea30516c8c4cbdb5e3ac7418e592de20c","size":16090,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.6.tgz"},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"anonymous","email":"ryan@trolocsis.com"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1391630605255,"_cnpm_publish_time":1391630605255,"_hasShrinkwrap":false},"0.1.5":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.5","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.3.5"},"devDependencies":{"whiskey":"0.6.8"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"readmeFilename":"README.md","_id":"elementtree@0.1.5","dist":{"shasum":"8d5fd80440b4be806c4a01b63914b40e0daab9ff","size":14486,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.5.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"anonymous","email":"tomaz+npm@tomaz.me"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1352952362800,"_cnpm_publish_time":1352952362800,"_hasShrinkwrap":false},"0.1.4":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.4","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.3.5"},"devDependencies":{"whiskey":"0.6.8"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"_npmUser":{"name":"anonymous","email":"tomaz+npm@tomaz.me"},"_id":"elementtree@0.1.4","_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.6.12","_defaultsLoaded":true,"dist":{"shasum":"96cf48ce71d68278da9d65a3aa3673f4b7609038","size":14306,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.4.tgz"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1350337881550,"_cnpm_publish_time":1350337881550,"_hasShrinkwrap":false},"0.1.3":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.3","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.3.5"},"devDependencies":{"whiskey":"0.6.8"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"_npmUser":{"name":"anonymous","email":"tomaz+npm@tomaz.me"},"_id":"elementtree@0.1.3","_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.6.12","_defaultsLoaded":true,"dist":{"shasum":"0399ea837772c6628204351f405d695a575755ce","size":14131,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.3.tgz"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1348261639958,"_cnpm_publish_time":1348261639958,"_hasShrinkwrap":false},"0.1.2":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.2","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.3.5"},"devDependencies":{"whiskey":"0.6.8"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"_npmUser":{"name":"anonymous","email":"tomaz+npm@tomaz.me"},"_id":"elementtree@0.1.2","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.16","_nodeVersion":"v0.6.15","_defaultsLoaded":true,"dist":{"shasum":"8b175178c66f2af0d3c2acf82296089b5f33d6a6","size":13950,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.2.tgz"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1346818951995,"_cnpm_publish_time":1346818951995,"_hasShrinkwrap":false},"0.1.1":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.1","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.2.3"},"devDependencies":{"whiskey":"0.4.1"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"_npmJsonOpts":{"file":"/home/vagrant/.npm/elementtree/0.1.1/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"elementtree@0.1.1","_engineSupported":true,"_npmVersion":"1.0.27","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"8a46cbae8d268bfe28909a0f2660a1c9603b511d","size":13234,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.1.tgz"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1316810173933,"_cnpm_publish_time":1316810173933,"_hasShrinkwrap":false},"0.1.0":{"author":{"name":"Rackspace US, Inc."},"contributors":[{"name":"Paul Querna","email":"paul.querna@rackspace.com"},{"name":"Tomaz Muraus","email":"tomaz.muraus@rackspace.com"}],"name":"elementtree","description":"XML Serialization and Parsing module based on Python's ElementTree.","version":"0.1.0","keywords":["xml","sax","parser","seralization","elementtree"],"homepage":"https://github.com/racker/node-elementtree","repository":{"type":"git","url":"git://github.com/racker/node-elementtree.git"},"main":"lib/elementtree.js","directories":{"lib":"lib"},"scripts":{"test":"make test"},"engines":{"node":">= 0.4.0"},"dependencies":{"sax":"0.2.3"},"devDependencies":{"whiskey":"0.4.1"},"licenses":[{"type":"Apache","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}],"_id":"elementtree@0.1.0","_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"7ed964eaab1f18c74ffed45f9e85fc1fa134d001","size":13201,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/elementtree/-/elementtree-0.1.0.tgz"},"maintainers":[{"name":"anonymous","email":"justin.gallardo@gmail.com"},{"name":"anonymous","email":"tomaz+npm@tomaz.me"},{"name":"anonymous","email":"maburns@gmail.com"},{"name":"anonymous","email":"pquerna@apache.org"},{"name":"anonymous","email":"robert.chiniquy@yahoo.com"},{"name":"anonymous","email":"ryan@trolocsis.com"}],"publish_time":1315216935227,"_cnpm_publish_time":1315216935227,"_hasShrinkwrap":false}},"dist-tags":{"latest":"0.1.7"},"name":"elementtree","time":{"modified":"2023-08-07T05:38:22.565Z","created":"2022-01-26T17:16:59.076Z","0.1.7":"2017-01-24T04:00:33.551Z","0.1.6":"2014-02-05T20:03:25.255Z","0.1.5":"2012-11-15T04:06:02.800Z","0.1.4":"2012-10-15T21:51:21.550Z","0.1.3":"2012-09-21T21:07:19.958Z","0.1.2":"2012-09-05T04:22:31.995Z","0.1.1":"2011-09-23T20:36:13.933Z","0.1.0":"2011-09-05T10:02:15.227Z"},"readme":"node-elementtree\n====================\n\nnode-elementtree is a [Node.js](http://nodejs.org) XML parser and serializer based upon the [Python ElementTree v1.3](http://effbot.org/zone/element-index.htm) module.\n\nInstallation\n====================\n\n    $ npm install elementtree\n    \nUsing the library\n====================\n\nFor the usage refer to the Python ElementTree library documentation - [http://effbot.org/zone/element-index.htm#usage](http://effbot.org/zone/element-index.htm#usage).\n\nSupported XPath expressions in `find`, `findall` and `findtext` methods are listed on [http://effbot.org/zone/element-xpath.htm](http://effbot.org/zone/element-xpath.htm).\n\nExample 1 – Creating An XML Document\n====================\n\nThis example shows how to build a valid XML document that can be published to\nAtom Hopper. Atom Hopper is used internally as a bridge from products all the\nway to collecting revenue, called “Usage.”  MaaS and other products send similar\nevents to it every time user performs an action on a resource\n(e.g. creates,updates or deletes). Below is an example of leveraging the API\nto create a new XML document.\n\n```javascript\nvar et = require('elementtree');\nvar XML = et.XML;\nvar ElementTree = et.ElementTree;\nvar element = et.Element;\nvar subElement = et.SubElement;\n\nvar date, root, tenantId, serviceName, eventType, usageId, dataCenter, region,\nchecks, resourceId, category, startTime, resourceName, etree, xml;\n\ndate = new Date();\n\nroot = element('entry');\nroot.set('xmlns', 'http://www.w3.org/2005/Atom');\n\ntenantId = subElement(root, 'TenantId');\ntenantId.text = '12345';\n\nserviceName = subElement(root, 'ServiceName');\nserviceName.text = 'MaaS';\n\nresourceId = subElement(root, 'ResourceID');\nresourceId.text = 'enAAAA';\n\nusageId = subElement(root, 'UsageID');\nusageId.text = '550e8400-e29b-41d4-a716-446655440000';\n\neventType = subElement(root, 'EventType');\neventType.text = 'create';\n\ncategory = subElement(root, 'category');\ncategory.set('term', 'monitoring.entity.create');\n\ndataCenter = subElement(root, 'DataCenter');\ndataCenter.text = 'global';\n\nregion = subElement(root, 'Region');\nregion.text = 'global';\n\nstartTime = subElement(root, 'StartTime');\nstartTime.text = date;\n\nresourceName = subElement(root, 'ResourceName');\nresourceName.text = 'entity';\n\netree = new ElementTree(root);\nxml = etree.write({'xml_declaration': false});\nconsole.log(xml);\n```\n\nAs you can see, both et.Element and et.SubElement are factory methods which\nreturn a new instance of Element and SubElement class, respectively.\nWhen you create a new element (tag) you can use set method to set an attribute.\nTo set the tag value, assign a value to the .text attribute.\n\nThis example would output a document that looks like this:\n\n```xml\n<entry xmlns=\"http://www.w3.org/2005/Atom\">\n  <TenantId>12345</TenantId>\n  <ServiceName>MaaS</ServiceName>\n  <ResourceID>enAAAA</ResourceID>\n  <UsageID>550e8400-e29b-41d4-a716-446655440000</UsageID>\n  <EventType>create</EventType>\n  <category term=\"monitoring.entity.create\"/>\n  <DataCenter>global</DataCenter>\n  <Region>global</Region>\n  <StartTime>Sun Apr 29 2012 16:37:32 GMT-0700 (PDT)</StartTime>\n  <ResourceName>entity</ResourceName>\n</entry>\n```\n\nExample 2 – Parsing An XML Document\n====================\n\nThis example shows how to parse an XML document and use simple XPath selectors.\nFor demonstration purposes, we will use the XML document located at\nhttps://gist.github.com/2554343.\n\nBehind the scenes, node-elementtree uses Isaac’s sax library for parsing XML,\nbut the library has a concept of “parsers,” which means it’s pretty simple to\nadd support for a different parser.\n\n```javascript\nvar fs = require('fs');\n\nvar et = require('elementtree');\n\nvar XML = et.XML;\nvar ElementTree = et.ElementTree;\nvar element = et.Element;\nvar subElement = et.SubElement;\n\nvar data, etree;\n\ndata = fs.readFileSync('document.xml').toString();\netree = et.parse(data);\n\nconsole.log(etree.findall('./entry/TenantId').length); // 2\nconsole.log(etree.findtext('./entry/ServiceName')); // MaaS\nconsole.log(etree.findall('./entry/category')[0].get('term')); // monitoring.entity.create\nconsole.log(etree.findall('*/category/[@term=\"monitoring.entity.update\"]').length); // 1\n```\n\nBuild status\n====================\n\n[![Build Status](https://secure.travis-ci.org/racker/node-elementtree.png)](http://travis-ci.org/racker/node-elementtree)\n\n\nLicense\n====================\n\nnode-elementtree is distributed under the [Apache license](http://www.apache.org/licenses/LICENSE-2.0.html).","users":{}}