View Single Post
Old 12-21-2010, 09:59 AM   #1
Matt.Geiger
Junior Member
Matt.Geiger began at the beginning.
 
Posts: 8
Karma: 10
Join Date: Dec 2010
Device: Kindel
NCX file issue with comma's

We ran into an interesting Problem in our NCX file the other day.
We have 13 locations in our NCX file the Copyright being the last navigation point.
We would generate the epub file and run it thru all the verifications and it would pass fine. When we would view it in kindle previewer we never saw the "cover" showing up as a Navigation point. We knew the problem was some place in the NCX file but we could not locate it we would remove the copyright from the NCX and the cover would show.
See the NCX below of the original issue

Quote:
<?xml version="1.0"?>
<!DOCTYPE ncx PUBLIC "-//NISO//DTD ncx 2005-1//EN" "http://www.daisy.org/z3986/2005/ncx-2005-1.dtd">
<ncx xmlns="http://www.daisy.org/z3986/2005/ncx/" version="2005-1">
<head>
<meta name="dtb:uid" content="removed ISBin"/>
<meta name="dtb:depth" content="1"/>
<meta name="dtb:totalPageCount" content="316"/>
<meta name="dtb:maxPageNumber" content="0"/>
</head>
<docTitle>
<text>Title hidden </text>
</docTitle>
<navMap>
<navPoint id="navpoint-1" playOrder="1">
<navLabel><text>Cover</text></navLabel>
<content src="xhtml/cover.xml"/></navPoint>
<navPoint id="navpoint-2" playOrder="2">
<navLabel><text>Title Page</text></navLabel>
<content src="xhtml/title.html"/></navPoint>
<navPoint id="navpoint-3" playOrder="3">
<navLabel><text>Dedication</text></navLabel>
<content src="xhtml/dedication.html"/></navPoint>
<navPoint id="navpoint-4" playOrder="4">
<navLabel><text>Acknowledgments</text></navLabel>
<content src="xhtml/acknowledgments.html"/></navPoint>
<navPoint id="navpoint-5" playOrder="5">
<navLabel><text>Contents</text></navLabel>
<content src="xhtml/contents.html"/></navPoint>
<navPoint id="navpoint-6" playOrder="6">
<navLabel><text>Batchcombe, Wessex, 1628</text></navLabel>
<content src="xhtml/batchcombe.html"/></navPoint>
<navPoint id="navpoint-7" playOrder="7">
<navLabel><text>Imbolg</text></navLabel>
<content src="xhtml/part1.html"/></navPoint>
<navPoint id="navpoint-8" playOrder="8">
<navLabel><text>Beltane</text></navLabel>
<content src="xhtml/part2.html"/></navPoint>
<navPoint id="navpoint-9" playOrder="9">
<navLabel><text>Litha</text></navLabel>
<content src="xhtml/part3.html"/></navPoint>
<navPoint id="navpoint-10" playOrder="10">
<navLabel><text>Samhain</text></navLabel>
<content src="xhtml/part4.html"/></navPoint>
<navPoint id="navpoint-11" playOrder="11">
<navLabel><text>Teaser</text></navLabel>
<content src="xhtml/teaser.html"/></navPoint>
<navPoint id="navpoint-12" playOrder="12">
<navLabel><text>Also by Author </text></navLabel>
<content src="xhtml/adcard.html"/></navPoint>
<navPoint id="navpoint-13" playOrder="13">
<navLabel><text>Copyright</text></navLabel>
<content src="xhtml/copyright.html"/></navPoint>
</navMap>
</ncx>
What we discovered is that having
Commas in the Nav Label would mess it up.
<navLabel><text>Batchcombe, Wessex, 1628</text></navLabel>
we changed the commas to entities and it worked fine.
What i can't understand is why removing the Copyright from the navlabel worked as well.
What are comma's doing to the file in the NCX and why will it not error out?

Thank you
Matt
Matt.Geiger is offline   Reply With Quote