daisy / pipeline

Super-project that aggregates all Pipeline related code, provides a common tracker for Pipeline related issues and holds the Pipeline website
http://daisy.github.io/pipeline
20 stars 20 forks source link

DAISY3->DAISY 2.02 does not populate <title> tag in ncc.html #541

Open ghost opened 5 years ago

ghost commented 5 years ago

When converting a DAISY 3 book to DAISY 2.02 the tile tag in the ncc.html is blank ()

This is populated (I think) using ncx-to-ncc.xsl and opf-to-metadata.xsl

                <title>
                    <xsl:value-of select="$metadata/meta[@name='dc:title']"/>
                </title> 

The element in the opf is of the form <meta name="dc:Title" content="The Book Actual Title">

It seems to me that it should not be the content of the meta element but the attribute 'content'. Perhaps ... <xsl:value-of select=""$metadata/meta[@name='dc:title']/@content" />

bertfrees commented 5 years ago

Yep, looks like a bug.

ghost commented 5 years ago

There's an additional complication to this problem... There is a definition in ncx-to-ncc.xsl for the default namespace on xpath.. xpath-default-namespace="http://www.daisy.org/z3986/2005/ncx/" exclude-result-prefixes="xs" this means that the 'meta' element in the select has the incorrect namespace. The following works by matching without namespace. (you could also define another namespace prefix (like xmlns:www="http://www.w3.org/1999/xhtml") and use that. <xsl:value-of select="$metadata/*[local-name()='meta'][@name='dc:title']/@content" />

bertfrees commented 5 years ago

OK.

A practical question: will you tackle all these issues while you are working on your "NLS book to DAISY 2.02" converter? Of course I am willing to help, but to fix these issues one by one and commit them on the master branch gives me a lot of overhead (for instance, we have various sub-repos that we commit to, and before committing to master the test suite needs to pass). More convenient would be if I can push to some feature branch, and merge it when it is finished. I can create the branch, and give you write permission to it if you need it, or you can create the branch.

ghost commented 5 years ago

Sure, glad to help. I might need some pointers on the process though. I don't anticipate finding more bugs, but perhaps you do 8-)