欢迎您来到 数字平台。 您尚未登录。[登录] [注册新用户]
当前位置: 论坛首页 / 栏目 产品与服务 / 文章 795

点击:924

[顶层访客留言] [回复顶层(需要先登录)] [表状] [详细]
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章跟帖
文章id: 795
回复: 回复:

作者: xietao


CNMARC 905 字段的 $y 是 year 的意思,索书号的年代部分;$v 是 volumn 的意思,索书号的卷期部分。这是我的记忆,不一定准确。

这两个子字段被一些单位用过。例如北图(期刊)。我有较深的印象。

回头我再查查具体的出处。

==========

以下是引用 精灵 于 2013/3/13 10:25:15 发表的文字:

==========

以下是引用 xiaohuo 于 2013/2/1 15:06:55 发表的文字:

==========

这个方案非常好,不过我感觉是否可以这样做,是否可以修改一下“library.xml”中的“public int GetBiblioPart(XmlDocument bibliodom,string strPartName,out string strResultValue)”函数,在这个函数中添加一个判断语句

if (bibliodom.DocumentElement.NamespaceURI == Ns.usmarcxml)

        {

            mngr.AddNamespace("usmarc", Ns.usmarcxml);    // "http://www.loc.gov/MARC21/slim"

            string strXPath = "";

            if (strPartName == "volume")

            {

                string v = "";

                string y = "";

                strXPath = "//usmarc:record/usmarc:datafield[@tag='905']/usmarc:subfield[@code='y']";

                node = bibliodom.SelectSingleNode(strXPath, mngr);

                if (node != null)

                    y = node.InnerText;

                strXPath = "//usmarc:record/usmarc:datafield[@tag='905']/usmarc:subfield[@code='v']";

                node = bibliodom.SelectSingleNode(strXPath, mngr);

                if (node != null)

                    v = node.InnerText;

                if (y != null)

                    strResultValue = y + "/";

                if (v != null)

                    strResultValue = strResultValue + v;

                else

                    strResultValue = strResultValue.Replace("/", "");

                return 1;

            }

            else if (strPartName == "price")

                strXPath = "//usmarc:record/usmarc:datafield[@tag='020']/usmarc:subfield[@code='c']";

                         ........................................................................................

                         ........................................................................................

                         ........................................................................................

                         ........................................................................................

                         ........................................................................................

        }

然后,在前端的“种册窗”中的“选项”里面,在卷期一项中填写入“@volume”。这样,采编部的同事,在做完书目数据后,直接扫描册条码就会自动填写上卷期信息。不用再统一添加卷期信息,可以加快图书加工效率。

但是,我还有一个小小的疑问,就是905字段中是否有X与Y这两个子字段。我查了一下MARC数据库方面的资料,没有发现里面记载着Y与X这两个子字段,也可能是我手中的资料太少。所以想请“xiaohuo”老师帮一下忙,帮忙指点一下这两个字段的出处。

==========



发表时间: 2013-03-26 12:47:05



  • 普通文章 为册加入索取号和卷期信息方案 xiaoma 2013-02-01 14:50:19[点击:37737]
  • 普通文章 _ xiaohuo 2013-02-01 15:06:55 (ID:782) [点击:1331]
  • 普通文章 _ xiaohuo 2013-02-01 15:07:35 (ID:783) [点击:1286]
  • 普通文章 回复: 精灵 2013-03-13 10:25:15 (ID:785) [点击:1474]
  • 普通文章 回复: 回复: xietao 2013-03-26 12:47:05 (ID:795) [点击:924]
  • 普通文章 _ xietao 2013-03-26 12:55:13 (ID:796) [点击:865]
  • 普通文章 回复: 为册加入索取号和卷期信息方案 xietao 2013-03-27 08:11:38 (ID:797) [点击:964]
  •  

    在线用户
    (无) 
    当前栏目在线用户数 0, 总在线用户数 0