金文历日波动的制约
利用金文历日考年,铜器断代是关键也是难题,需要人们花大力气做好这一工作。但是,即便是铜器断代是准确无误的,也还存在把这些历日放在历表什么位置上的问题。对此,新城氏早有认识,他说:“月相与日之干支二者之关系,大约每五年反复,故虽不能由此决定其年代,但可以联合其他资料,而作为有力之参考材料者焉。”[52]这说明用金文历日考年,因为其绝对年代事先并不知晓,单凭月份、月相与记日干支三方面的条件给历日定位,就可能出现大约五年、十年、十五年、二十年这样以五年递进的年代差。又因为月相四分说每一月相的时间范围多至七八天,有时历日定位会出现上下两年均可合天的情况,弄不好也会造成一年的误差。那么,怎样避免历日定位的波动性可能带来的少则一年多则五年十年的这种误差呢?有的学者以为通过用金文历日编组的方法可以克服这一弊端。如何幼琦说:“在同一王世数器众多的元年中,往往有一个为数器所共有,可以确认,这就是时王的元年。”[53]数器集中共同推求时王元年实际上仍是一种金文历日编组的方法,而这个元年的定位也决不会只有一个年份,何氏以王臣簋、柞钟推证懿王元年,就出现了三个共同的年份即前936年、前935年、前925年,需要以别的条件来鉴别即是明证。马承源也注意到:“每一组金文组合可以在闰尺上推移,整个的组合推移必须是有规律的,大约十年左右推移一次周期,则基本上合于原来干支的位置。”[54]可见,月相四分说与定点说一样,也有一个如何制约金文历日定位的波动问题。
在制约金文历日定位的波动问题上,可以说单凭金文历日编组是无济于事的。这是因为相当数量的铜器断代尚有分歧,一时无法取得众所认同的结论,所以在金文历日编组时就会出现不同的组合,直接影响列王在位年代的推定。如三十七年膳夫山鼎为西周晚期之器,但其历日不合于宣世,白川静便编入夷王金文组,由此推定夷王在位三十九年;谢元震编入厉王金文组,因定厉王在位四十年;赵光贤先生认为此器三十七年实即共和七年,故定厉王在位三十年,如此等等。这说明金文历日特别是一些高王年铜器历日如何编组,与西周王年的考订关系极为重大。因此,在金文历日编组时,诚如新城氏所说需要联合其他资料作为参考。以夷王在位年代为例,历史上有八年、十五年、十六年等不同说法,从来无人认为会长达三四十年。据《左传》昭公二十六年记载:“至于夷王,王愆于厥身,诸侯莫不并走其望,以祈王身。”此谓夷王身患恶疾,情况必定相当严重,故诸侯为之祈祷。可见夷王不是长寿之人,其在位时间不大可能如白川静所订长达三十九年。又如厉王的在位年代,《史记·周本纪》记有三十七年,但从同书齐、卫、陈杞三《世家》相对应的年代来看,厉王在位约在十三到二十四年之间[55]。自新城新藏之后,近世学者多不相信厉王在位三十七年说,而是据诸《世家》所记年代范围推定厉王的纪年。对《周本纪》与诸《世家》有关厉王纪年的矛盾,司马迁应该有所察觉,不然《十二诸侯年表》不会断自共和元年。不过,从司马迁当时所掌握的主要史料看,厉王三十七年说应有充分的根据,所以才被录入《周本纪》,成为本篇有限的几个西周王年之一。可以设想,当时西周列王年代的可靠资料已极匮乏,其他诸侯的纪年资料也不会很多且有可能更为混乱。对此司马迁无从进行彻底的清理,只是尝试性地注出一些诸侯在位的时代和相应的王年,以便制作《十二诸侯年表》。但这并不等于《世家》的可信度就一定在《周本纪》之上。在这个问题上,如果说司马迁当时掌握的资料还不足以肯定厉王三十七年说,但传世和出土的三十年以上的西周晚期青铜器铭文其历日不合于宣世,应可证明厉王三十七年说更为可信。因此,把厉王在位年代说得很短未必合符事实,也未必就能把一些高王年铜器的历日安排妥帖。可见,利用现有的纪年资料作为编排金文历日组的年代框架,还是十分重要的。
此外,在西周二三百年的时间内寻求一些可靠的年代支点,也有利于防止金文历日的波动。从现有条件看,可以起到王年支点作用的年代有两个,一个是武王克商之年,一个是懿王元年。
在西周列王年代尚未落实之前,西周始年亦即武王克商之年当然也只是一个假设。过去人们考索武王克商之年,主要依据《武成》中的历日资料和《国语·周语下》“岁在鹑火”等天象资料,但由于历日资料的波动性和岁星十二年运行周期的影响,符合这些条件的仍有不少年份,其取舍不免见仁见智以致形成多种说法。近来夏商周断代工程通过对周初遗址的C14测定和武丁月食年代的证认,推出克商之年当在公元前1050—1020年范围之内,就算这种结论稍嫌模糊,也会实际起到王年支点的作用,有利于控制金文历日组在更大的范围内波动。
更重要的年代支点是西周中期的懿王元年。古本《竹书纪年》“懿王元年天再旦于郑”的记载,刘朝阳、董作宾等都认为是一次日食现象,学者多从其说。只是这次日食发生在哪一年,人们有不同的推断。刘朝阳认为在前926年,董作宾认为在前966年,韩国学者方善柱认为在前899年[56],此外还有其他一些说法。近来夏商周断代工程进一步验证应为前899年。这样,西周中期金文历日的排谱将受此约束,有利于克服其上下游移的波动性。
由此可见,通过金文历日编组的办法来重构西周列王年代,一方面需要对铜器断代有较好的把握,在金文历日编组时不致发生出此入彼的误差;另一方面还需要确定具有可操作性的年代框架和控制历日波动的年代支点,把金文历日的定位有效地落实在可能的时间范围内。这样,方能保证西周金文历日考年的科学性。但以往的研究者在这些方面或多或少都存在一些问题,不能不影响到有关研究成果的可靠性。