Extra constructors index entry in VS2005 style

Apr 22, 2008 at 9:46 AM
(This issue has been redirected from the SHFB forum)


I'm using the current SHFB beta (we need the inheritdoc feature, the problem also occurs with, though) together with the current sandcastle CTP. Our presentation style is VS 2005. MsHelp2 documentation builds fine, however, I noticed that there is a separate constructor entry in the index. It looks like that:

AbstractEdgeStyle (<- dysfunctional, i.e. no topic found)
constructor (<- dysfunctional, i.e. no topic found)
constructor (<- this is the constructor entry or the overloads page)
AbstractEdgeStyle class
about AbstractEdgeStyle class
all members

All entries below "AbstractEdgeStyle class" work fine, except that the constructors entry seems to be split off... The TOC entries on the content page are fine. Also, the problem occurs both in H2Viewer and in MS Document explorer, so I'm confident it's not an issue with help2 registration.

The problem seems to be related to the VS 2005 presentation style (hana and prototype are fine, however, we don't like these styles...).

Does anyone know how to work around that problem?


Apr 22, 2008 at 2:28 PM
Hi JM,

The problem appears to be in the utilities_metadata.xsl file. If you search for constructorIndexEntry you'll find where the K index item entry is added. A nested <include> tag is duplicating the content item, so it should be removed.

This is what the XSL should look like after being fixed:

<MSHelp:Keyword Index="K">
  <includeAttribute name="Term" item="constructorIndexEntry">
      <xsl:value-of select="." />
Note that I don't know if this fix will cause any negative side effects.

I'll file a bug report.

- Dave
Apr 22, 2008 at 2:33 PM
Bug report:

Invalid K Index entry for constructor APIs