我的论文使用了APA引文。但是,对于使用泰语撰写的研究文档,内联引用必须采用(名字姓氏,年份)而不是APA(姓氏,年份)的形式。这应该可以使用自定义Microsoft Word 2013参考书目样式,这需要调整C:\ Program Files(x86)\ Microsoft Office \ Office14 \ Bibliography \ Style中的APA.XSL文件以包含类似于以下的其他逻辑:
<xsl:choose>
<xsl:when test="b:LCID='1054'">
(Firstname Lastname, year)
</xsl:when>
<xsl:otherwise>
(Lastname, year)
</xsl:otherwise>
</xsl:choose>
我认为应该在本节中添加额外的逻辑,并且它必须涉及对xsl:template formatNameCore的调整。
<xsl:variable name="author0">
</xsl:variable>
然而,我的想法正在画一个空白。我想知道是否有人能指出我正确的方向。非常感谢帮助。
答案 0 :(得分:1)
经过一些搜索(和阅读)之后,我偶然发现了this post,其中指定了所有temp1_prop_APA_ _ ,如下所示:
templ_prop_APA_MainAuthors_FML = %L, %f %m
templ_prop_APA_MainAuthors_FM = %f %m
templ_prop_APA_MainAuthors_ML = %L, %m
templ_prop_APA_MainAuthors_FL = %L, %f
没有任何损失;因此,我试过了。虽然我不知道这些%L,%F或%M和它们的小写对应物是如何形成的(解释会很好),但表达式确实有效。反过来,下面包括调整后的代码部分。到目前为止,它似乎是为了这个目的。
<xsl:template name="templ_prop_APA_CitationLong_FML" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%F %M %L'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%L, %F %M'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationLong_FM" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%F %M'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%F %M'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationLong_ML" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%M %L'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%L, %M'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationLong_FL" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%F %L'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%L, %F'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationShort_FML" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%F %M %L'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%L'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationShort_FM" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%F %M'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%F'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationShort_ML" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%M %L'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%L'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="templ_prop_APA_CitationShort_FL" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$_LCID='1054'">
<xsl:value-of select="'%F %L'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'%L'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
注意:包含完整文件here。
答案 1 :(得分:0)
它与这些模板有关:
<xsl:template name="templ_prop_APA_CitationShort_FML" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="/*/b:Locals/b:Local[@LCID=$_LCID]/b:APA/b:CitationShort/b:FML"/>
</xsl:template>
<!-- ... -->
<xsl:template name="templ_prop_APA_CitationShort_FL" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="/*/b:Locals/b:Local[@LCID=$_LCID]/b:APA/b:CitationShort/b:FL"/>
</xsl:template>
尝试:
<xsl:template name="templ_prop_APA_CitationShort_FML" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="/*/b:Locals/b:Local[@LCID=$_LCID]/b:APA/b:CitationShort/b:FM"/>
<xsl:text> </xsl:text>
<xsl:value-of select="/*/b:Locals/b:Local[@LCID=$_LCID]/b:APA/b:CitationShort/b:FML"/>
</xsl:template>
<!-- ... -->
<xsl:template name="templ_prop_APA_CitationShort_FL" >
<xsl:param name="LCID" />
<xsl:variable name="_LCID">
<xsl:call-template name="localLCID">
<xsl:with-param name="LCID" select="$LCID"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="/*/b:Locals/b:Local[@LCID=$_LCID]/b:APA/b:CitationShort/b:FM"/>
<xsl:text> </xsl:text>
<xsl:value-of select="/*/b:Locals/b:Local[@LCID=$_LCID]/b:APA/b:CitationShort/b:FL"/>
</xsl:template>
我无法弄清楚这些值的填充位置,所以这是我现在能做的最好的。
在这里进行此更改似乎是安全的,而不是<xsl:variable name="author0">...</xsl:variable>
中的循环,因为它只是从那里调用过。此更改不会影响您的参考书目。
您可能还需要修改其他temp1_prop_APA_*_*
模板。