mirror of
https://github.com/mikefarah/yq.git
synced 2025-01-14 20:45:36 +00:00
1.4 KiB
1.4 KiB
XML
At the moment, yq
only supports decoding xml
(into one of the other supported output formats).
As yaml does not have the concept of attributes, these are converted to regular fields with a prefix to prevent clobbering. Consecutive xml nodes with the same name are assumed to be arrays.
All values in XML are assumed to be strings.
Parse xml: simple
Given a sample.xml file of:
<?xml version="1.0" encoding="UTF-8"?>
<cat>meow</cat>
then
yq e sample.xml
will output
cat: meow
Parse xml: array
Consecutive nodes with identical xml names are assumed to be arrays.
Given a sample.xml file of:
<?xml version="1.0" encoding="UTF-8"?>
<animal>1</animal><animal>2</animal>
then
yq e sample.xml
will output
animal:
- "1"
- "2"
Parse xml: attributes
Attributes are converted to fields, with the attribute prefix.
Given a sample.xml file of:
<?xml version="1.0" encoding="UTF-8"?>
<cat legs="4"><legs>7</legs></cat>
then
yq e sample.xml
will output
cat:
+legs: "4"
legs: "7"
Parse xml: attributes with content
Content is added as a field, using the content name
Given a sample.xml file of:
<?xml version="1.0" encoding="UTF-8"?>
<cat legs="4">meow</cat>
then
yq e sample.xml
will output
cat:
+content: meow
+legs: "4"