Unable to create CDATA section in XML using “xmlbuilder” node.js module
up vote
0
down vote
favorite
I am using "xmlbuilder" node.js module to create xml file. I need to create a CDATA section as follows:
<notestext><![CDATA[Notes Text]]></notestext>
I referred the github link, but didn't found any useful stuff.
How to create such CDATA section in an xml file using "xmlbuilder" node.js module?
let builder = require('xmlbuilder', encoding: 'utf-8' );
let xml = builder.create('Slides');
xml.ele("notestext","<![CDATA[" + element.notes_text + "]]>");
xml.end( pretty: true );
console.log(xml.toString());
javascript node.js xml npm xml-builder
add a comment |
up vote
0
down vote
favorite
I am using "xmlbuilder" node.js module to create xml file. I need to create a CDATA section as follows:
<notestext><![CDATA[Notes Text]]></notestext>
I referred the github link, but didn't found any useful stuff.
How to create such CDATA section in an xml file using "xmlbuilder" node.js module?
let builder = require('xmlbuilder', encoding: 'utf-8' );
let xml = builder.create('Slides');
xml.ele("notestext","<![CDATA[" + element.notes_text + "]]>");
xml.end( pretty: true );
console.log(xml.toString());
javascript node.js xml npm xml-builder
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I am using "xmlbuilder" node.js module to create xml file. I need to create a CDATA section as follows:
<notestext><![CDATA[Notes Text]]></notestext>
I referred the github link, but didn't found any useful stuff.
How to create such CDATA section in an xml file using "xmlbuilder" node.js module?
let builder = require('xmlbuilder', encoding: 'utf-8' );
let xml = builder.create('Slides');
xml.ele("notestext","<![CDATA[" + element.notes_text + "]]>");
xml.end( pretty: true );
console.log(xml.toString());
javascript node.js xml npm xml-builder
I am using "xmlbuilder" node.js module to create xml file. I need to create a CDATA section as follows:
<notestext><![CDATA[Notes Text]]></notestext>
I referred the github link, but didn't found any useful stuff.
How to create such CDATA section in an xml file using "xmlbuilder" node.js module?
let builder = require('xmlbuilder', encoding: 'utf-8' );
let xml = builder.create('Slides');
xml.ele("notestext","<![CDATA[" + element.notes_text + "]]>");
xml.end( pretty: true );
console.log(xml.toString());
javascript node.js xml npm xml-builder
javascript node.js xml npm xml-builder
edited Nov 10 at 20:50
RobC
5,26592033
5,26592033
asked Nov 10 at 11:17
Kushagra Sinha
164
164
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
up vote
1
down vote
From Doc you posted
CDATA Nodes CDATA nodes are created with the cdata function (can also
be abbreviated to dat or d). The value should not include CDATA
delimitersele.dat('this will be surrounded by CDATA delimiters');
var builder = require('xmlbuilder', encoding: 'utf-8' );
var xml = builder.create('slides');
xml.ele('notestext').dat('Notes Text');
xml.end(
pretty: true,
indent: ' '
);
console.log(xml.toString());
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
add a comment |
up vote
0
down vote
Solution 1:
Utilize the .cdata
(.dat
, or .d
) method and chain each method to generate the XML fragment. For instance:
Javascript:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder
.create('slides', version: '1.0', encoding: 'UTF-8', standalone: true )
.ele('notestext')
.cdata(element.notes_text)
.end(
pretty: true
);
console.log(xml);
Output:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 2:
Another way to write it, which is more similar to your example, is as follows:
var builder = require('xmlbuilder', encoding: 'utf-8' );
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder.create('slides');
xml.ele('notestext').cdata(element.notes_text);
xml.end(
pretty: true
);
console.log(xml.toString());
Note: This example uses less method chaining than the previous example, however it does chain the cdata
method to the ele
method.
This prints the following:
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 3:
Alternatively, if you don't want to chain any methods you can do something like following:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var rootElement = builder.create('slides');
var childElement = rootElement.ele('notestext')
childElement.cdata(element.notes_text);
rootElement.end(
pretty: true
);
console.log(rootElement.toString());
This also prints the same output as Solution 2.
Additional information:
The docs describe the .cdata
method as follows:
CDATA Nodes
CDATA nodes are created with the
cdata
function (can also be abbreviated todat
ord
). The value should not include CDATA delimiters
ele.dat('this will be surrounded by CDATA delimiters');
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
From Doc you posted
CDATA Nodes CDATA nodes are created with the cdata function (can also
be abbreviated to dat or d). The value should not include CDATA
delimitersele.dat('this will be surrounded by CDATA delimiters');
var builder = require('xmlbuilder', encoding: 'utf-8' );
var xml = builder.create('slides');
xml.ele('notestext').dat('Notes Text');
xml.end(
pretty: true,
indent: ' '
);
console.log(xml.toString());
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
add a comment |
up vote
1
down vote
From Doc you posted
CDATA Nodes CDATA nodes are created with the cdata function (can also
be abbreviated to dat or d). The value should not include CDATA
delimitersele.dat('this will be surrounded by CDATA delimiters');
var builder = require('xmlbuilder', encoding: 'utf-8' );
var xml = builder.create('slides');
xml.ele('notestext').dat('Notes Text');
xml.end(
pretty: true,
indent: ' '
);
console.log(xml.toString());
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
add a comment |
up vote
1
down vote
up vote
1
down vote
From Doc you posted
CDATA Nodes CDATA nodes are created with the cdata function (can also
be abbreviated to dat or d). The value should not include CDATA
delimitersele.dat('this will be surrounded by CDATA delimiters');
var builder = require('xmlbuilder', encoding: 'utf-8' );
var xml = builder.create('slides');
xml.ele('notestext').dat('Notes Text');
xml.end(
pretty: true,
indent: ' '
);
console.log(xml.toString());
From Doc you posted
CDATA Nodes CDATA nodes are created with the cdata function (can also
be abbreviated to dat or d). The value should not include CDATA
delimitersele.dat('this will be surrounded by CDATA delimiters');
var builder = require('xmlbuilder', encoding: 'utf-8' );
var xml = builder.create('slides');
xml.ele('notestext').dat('Notes Text');
xml.end(
pretty: true,
indent: ' '
);
console.log(xml.toString());
edited Nov 10 at 19:36
answered Nov 10 at 17:23
Redanium
745413
745413
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
add a comment |
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
No such method found error is coming when applying "dat()" method. Please check
– Kushagra Sinha
Nov 10 at 17:32
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
it worked for me xmlbuilder@10.1.1 node v6.9.4 npm v3.10.10
– Redanium
Nov 10 at 19:35
add a comment |
up vote
0
down vote
Solution 1:
Utilize the .cdata
(.dat
, or .d
) method and chain each method to generate the XML fragment. For instance:
Javascript:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder
.create('slides', version: '1.0', encoding: 'UTF-8', standalone: true )
.ele('notestext')
.cdata(element.notes_text)
.end(
pretty: true
);
console.log(xml);
Output:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 2:
Another way to write it, which is more similar to your example, is as follows:
var builder = require('xmlbuilder', encoding: 'utf-8' );
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder.create('slides');
xml.ele('notestext').cdata(element.notes_text);
xml.end(
pretty: true
);
console.log(xml.toString());
Note: This example uses less method chaining than the previous example, however it does chain the cdata
method to the ele
method.
This prints the following:
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 3:
Alternatively, if you don't want to chain any methods you can do something like following:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var rootElement = builder.create('slides');
var childElement = rootElement.ele('notestext')
childElement.cdata(element.notes_text);
rootElement.end(
pretty: true
);
console.log(rootElement.toString());
This also prints the same output as Solution 2.
Additional information:
The docs describe the .cdata
method as follows:
CDATA Nodes
CDATA nodes are created with the
cdata
function (can also be abbreviated todat
ord
). The value should not include CDATA delimiters
ele.dat('this will be surrounded by CDATA delimiters');
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
add a comment |
up vote
0
down vote
Solution 1:
Utilize the .cdata
(.dat
, or .d
) method and chain each method to generate the XML fragment. For instance:
Javascript:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder
.create('slides', version: '1.0', encoding: 'UTF-8', standalone: true )
.ele('notestext')
.cdata(element.notes_text)
.end(
pretty: true
);
console.log(xml);
Output:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 2:
Another way to write it, which is more similar to your example, is as follows:
var builder = require('xmlbuilder', encoding: 'utf-8' );
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder.create('slides');
xml.ele('notestext').cdata(element.notes_text);
xml.end(
pretty: true
);
console.log(xml.toString());
Note: This example uses less method chaining than the previous example, however it does chain the cdata
method to the ele
method.
This prints the following:
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 3:
Alternatively, if you don't want to chain any methods you can do something like following:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var rootElement = builder.create('slides');
var childElement = rootElement.ele('notestext')
childElement.cdata(element.notes_text);
rootElement.end(
pretty: true
);
console.log(rootElement.toString());
This also prints the same output as Solution 2.
Additional information:
The docs describe the .cdata
method as follows:
CDATA Nodes
CDATA nodes are created with the
cdata
function (can also be abbreviated todat
ord
). The value should not include CDATA delimiters
ele.dat('this will be surrounded by CDATA delimiters');
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
add a comment |
up vote
0
down vote
up vote
0
down vote
Solution 1:
Utilize the .cdata
(.dat
, or .d
) method and chain each method to generate the XML fragment. For instance:
Javascript:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder
.create('slides', version: '1.0', encoding: 'UTF-8', standalone: true )
.ele('notestext')
.cdata(element.notes_text)
.end(
pretty: true
);
console.log(xml);
Output:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 2:
Another way to write it, which is more similar to your example, is as follows:
var builder = require('xmlbuilder', encoding: 'utf-8' );
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder.create('slides');
xml.ele('notestext').cdata(element.notes_text);
xml.end(
pretty: true
);
console.log(xml.toString());
Note: This example uses less method chaining than the previous example, however it does chain the cdata
method to the ele
method.
This prints the following:
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 3:
Alternatively, if you don't want to chain any methods you can do something like following:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var rootElement = builder.create('slides');
var childElement = rootElement.ele('notestext')
childElement.cdata(element.notes_text);
rootElement.end(
pretty: true
);
console.log(rootElement.toString());
This also prints the same output as Solution 2.
Additional information:
The docs describe the .cdata
method as follows:
CDATA Nodes
CDATA nodes are created with the
cdata
function (can also be abbreviated todat
ord
). The value should not include CDATA delimiters
ele.dat('this will be surrounded by CDATA delimiters');
Solution 1:
Utilize the .cdata
(.dat
, or .d
) method and chain each method to generate the XML fragment. For instance:
Javascript:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder
.create('slides', version: '1.0', encoding: 'UTF-8', standalone: true )
.ele('notestext')
.cdata(element.notes_text)
.end(
pretty: true
);
console.log(xml);
Output:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 2:
Another way to write it, which is more similar to your example, is as follows:
var builder = require('xmlbuilder', encoding: 'utf-8' );
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var xml = builder.create('slides');
xml.ele('notestext').cdata(element.notes_text);
xml.end(
pretty: true
);
console.log(xml.toString());
Note: This example uses less method chaining than the previous example, however it does chain the cdata
method to the ele
method.
This prints the following:
<slides>
<notestext>
<![CDATA[<p>Hello <em>World</em></p>]]>
</notestext>
</slides>
Solution 3:
Alternatively, if you don't want to chain any methods you can do something like following:
var builder = require('xmlbuilder');
var element =
notes_text: '<p>Hello <em>World</em></p>'
;
var rootElement = builder.create('slides');
var childElement = rootElement.ele('notestext')
childElement.cdata(element.notes_text);
rootElement.end(
pretty: true
);
console.log(rootElement.toString());
This also prints the same output as Solution 2.
Additional information:
The docs describe the .cdata
method as follows:
CDATA Nodes
CDATA nodes are created with the
cdata
function (can also be abbreviated todat
ord
). The value should not include CDATA delimiters
ele.dat('this will be surrounded by CDATA delimiters');
edited Nov 10 at 22:42
answered Nov 10 at 18:08
RobC
5,26592033
5,26592033
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
add a comment |
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
Thanks a lot brother. It worked for me.
– Kushagra Sinha
Nov 11 at 4:01
add a comment |
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53238406%2funable-to-create-cdata-section-in-xml-using-xmlbuilder-node-js-module%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password