diff options
Diffstat (limited to 'cordova/node_modules/elementtree/README.md')
| -rwxr-xr-x | cordova/node_modules/elementtree/README.md | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/cordova/node_modules/elementtree/README.md b/cordova/node_modules/elementtree/README.md deleted file mode 100755 index 738420c..0000000 --- a/cordova/node_modules/elementtree/README.md +++ /dev/null @@ -1,141 +0,0 @@ -node-elementtree -==================== - -node-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. - -Installation -==================== - - $ npm install elementtree - -Using the library -==================== - -For 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). - -Supported 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). - -Example 1 – Creating An XML Document -==================== - -This example shows how to build a valid XML document that can be published to -Atom Hopper. Atom Hopper is used internally as a bridge from products all the -way to collecting revenue, called “Usage.” MaaS and other products send similar -events to it every time user performs an action on a resource -(e.g. creates,updates or deletes). Below is an example of leveraging the API -to create a new XML document. - -```javascript -var et = require('elementtree'); -var XML = et.XML; -var ElementTree = et.ElementTree; -var element = et.Element; -var subElement = et.SubElement; - -var date, root, tenantId, serviceName, eventType, usageId, dataCenter, region, -checks, resourceId, category, startTime, resourceName, etree, xml; - -date = new Date(); - -root = element('entry'); -root.set('xmlns', 'http://www.w3.org/2005/Atom'); - -tenantId = subElement(root, 'TenantId'); -tenantId.text = '12345'; - -serviceName = subElement(root, 'ServiceName'); -serviceName.text = 'MaaS'; - -resourceId = subElement(root, 'ResourceID'); -resourceId.text = 'enAAAA'; - -usageId = subElement(root, 'UsageID'); -usageId.text = '550e8400-e29b-41d4-a716-446655440000'; - -eventType = subElement(root, 'EventType'); -eventType.text = 'create'; - -category = subElement(root, 'category'); -category.set('term', 'monitoring.entity.create'); - -dataCenter = subElement(root, 'DataCenter'); -dataCenter.text = 'global'; - -region = subElement(root, 'Region'); -region.text = 'global'; - -startTime = subElement(root, 'StartTime'); -startTime.text = date; - -resourceName = subElement(root, 'ResourceName'); -resourceName.text = 'entity'; - -etree = new ElementTree(root); -xml = etree.write({'xml_declaration': false}); -console.log(xml); -``` - -As you can see, both et.Element and et.SubElement are factory methods which -return a new instance of Element and SubElement class, respectively. -When you create a new element (tag) you can use set method to set an attribute. -To set the tag value, assign a value to the .text attribute. - -This example would output a document that looks like this: - -```xml -<entry xmlns="http://www.w3.org/2005/Atom"> - <TenantId>12345</TenantId> - <ServiceName>MaaS</ServiceName> - <ResourceID>enAAAA</ResourceID> - <UsageID>550e8400-e29b-41d4-a716-446655440000</UsageID> - <EventType>create</EventType> - <category term="monitoring.entity.create"/> - <DataCenter>global</DataCenter> - <Region>global</Region> - <StartTime>Sun Apr 29 2012 16:37:32 GMT-0700 (PDT)</StartTime> - <ResourceName>entity</ResourceName> -</entry> -``` - -Example 2 – Parsing An XML Document -==================== - -This example shows how to parse an XML document and use simple XPath selectors. -For demonstration purposes, we will use the XML document located at -https://gist.github.com/2554343. - -Behind the scenes, node-elementtree uses Isaac’s sax library for parsing XML, -but the library has a concept of “parsers,” which means it’s pretty simple to -add support for a different parser. - -```javascript -var fs = require('fs'); - -var et = require('elementtree'); - -var XML = et.XML; -var ElementTree = et.ElementTree; -var element = et.Element; -var subElement = et.SubElement; - -var data, etree; - -data = fs.readFileSync('document.xml').toString(); -etree = et.parse(data); - -console.log(etree.findall('./entry/TenantId').length); // 2 -console.log(etree.findtext('./entry/ServiceName')); // MaaS -console.log(etree.findall('./entry/category')[0].get('term')); // monitoring.entity.create -console.log(etree.findall('*/category/[@term="monitoring.entity.update"]').length); // 1 -``` - -Build status -==================== - -[](http://travis-ci.org/racker/node-elementtree) - - -License -==================== - -node-elementtree is distributed under the [Apache license](http://www.apache.org/licenses/LICENSE-2.0.html). |
