/usr/share/kbibtex/isbndb2bibtex.xsl is in kbibtex-data 0.8~20170819git31a77b27e8e83836e-3build2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | <xsl:transform version='2.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<!--
- This Extensible Stylesheet Language Transformation file translates XML files
- as provided by ISBNdb.com into BibTeX files.
-
- This file was written by Thomas Fischer <fischer@unix-ag.uni-kl.de>
- It is released under the GNU Public License version 2 or later.
-
-->
<xsl:output method="text" omit-xml-declaration="yes" indent="no" encoding="UTF-8"/>
<xsl:strip-space elements="*"/>
<!-- START HERE -->
<xsl:template match="/">
<!-- process each entry -->
<xsl:apply-templates select="ISBNdb/BookList/BookData" />
</xsl:template>
<xsl:template match="BookData">
<!-- opening entry -->
<xsl:text>@book{</xsl:text>
<xsl:value-of select="@book_id" />
<!-- title -->
<xsl:choose>
<xsl:when test="TitleLong and string-length(TitleLong)>2">
<xsl:text>,
title = {{</xsl:text>
<xsl:value-of select="TitleLong" />
<xsl:text>}}</xsl:text>
</xsl:when>
<xsl:when test="Title and string-length(Title)>2">
<xsl:text>,
title = {{</xsl:text>
<xsl:value-of select="Title" />
<xsl:text>}}</xsl:text>
</xsl:when>
</xsl:choose>
<!-- summary/abstract -->
<xsl:if test="Summary and string-length(Summary)>2">
<xsl:text>,
abstract = {</xsl:text>
<xsl:value-of select="Summary" />
<xsl:text>}</xsl:text>
</xsl:if>
<!-- publisher -->
<xsl:if test="PublisherText and string-length(PublisherText)>2">
<xsl:text>,
publisher = {</xsl:text>
<xsl:value-of select="PublisherText" />
<xsl:text>}</xsl:text>
</xsl:if>
<!-- authors -->
<xsl:choose>
<xsl:when test="AuthorsText">
<xsl:text>,
author = {{</xsl:text>
<xsl:value-of select="AuthorsText" />
<xsl:text>}}</xsl:text>
</xsl:when>
<xsl:when test="Authors/Person">
<xsl:text>,
author = {</xsl:text>
<xsl:for-each select="Authors/Person">
<xsl:apply-templates select="."/>
<xsl:if test="position()!=last()"><xsl:text> and </xsl:text></xsl:if>
</xsl:for-each>
<xsl:text>}</xsl:text>
</xsl:when>
</xsl:choose>
<!-- ISBN -->
<xsl:choose>
<xsl:when test="@isbn13 and string-length(@isbn13)>2">
<xsl:text>,
isbn = {</xsl:text>
<xsl:value-of select="@isbn13" />
<xsl:text>}</xsl:text>
</xsl:when>
<xsl:when test="@isbn and string-length(@isbn)>2">
<xsl:text>,
isbn = {</xsl:text>
<xsl:value-of select="@isbn" />
<xsl:text>}</xsl:text>
</xsl:when>
</xsl:choose>
<!-- closing entry -->
<xsl:text>
}
</xsl:text>
</xsl:template>
</xsl:transform>
|