Comparing version 1.0.12 to 1.0.13
{ | ||
"name": "pixl-xml", | ||
"version": "1.0.12", | ||
"version": "1.0.13", | ||
"description": "A simple module for parsing and composing XML.", | ||
@@ -5,0 +5,0 @@ "author": "Joseph Huckaby <jhuckaby@gmail.com>", |
@@ -196,2 +196,34 @@ # Overview | ||
### forceArrays | ||
By default single elements are not represented as arrays, until another element with the same appears at the same level in the XML tree. However, if you want to force every element into an array all the time, even when there is only a single element with a given name, set the `forceArrays` property to true. Example: | ||
```js | ||
var xml_string = '<?xml version="1.0"?><Document>' + | ||
'<Simple>Hello</Simple>' + | ||
'<Node Key="Value">Complex</Node>' + | ||
'</Document>'; | ||
var doc = XML.parse( xml_string, { forceArrays: true } ); | ||
console.log( doc ); | ||
``` | ||
With the `forceArrays` flag set to true, this would produce the following object: | ||
```js | ||
{ | ||
"Simple": [ | ||
"Hello" | ||
], | ||
"Node": [ | ||
{ | ||
"Key": "Value", | ||
"_Data": "Complex" | ||
} | ||
] | ||
} | ||
``` | ||
Please note that this feature applies only to elements, not attributes. | ||
## Composing XML | ||
@@ -198,0 +230,0 @@ |
@@ -81,2 +81,3 @@ /* | ||
XML.prototype.lowerCase = false; | ||
XML.prototype.forceArrays = false; | ||
@@ -216,2 +217,5 @@ XML.prototype.patTag = /([^<]*?)<([^>]+)>/g; | ||
} | ||
else if (this.forceArrays && (branch != this.tree)) { | ||
branch[nodeName] = [ leaf ]; | ||
} | ||
else { | ||
@@ -218,0 +222,0 @@ branch[nodeName] = leaf; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
34773
527
507