Page 424 - 《软件学报》2025年第12期
P. 424

黄小龙 等: ReproLink: 面向可复现性的科研数据管理系统                                               5805


                                                                           π I : O → I, π P : O → P, π E : O → E 分别
                 体标识的集合为      I, 全体属性集的集合为      P, 全体数据实体的集合为        E, 函数
                 为科研数据对象到其标识、属性集、数据实体的映射. 即对于科研数据对象                          O = (I,P,E), 有  π I (O) = I, π P (O) = P,
                 π E (O) = E.
                    2) 标识  I ∈ I 为一个字符串, 用于唯一标识和寻址        O 中的每个科研数据对象.       ∀O 1 ,O 2 ∈ O, O 1 , O 2  满足  π I (O 1 ) ,
                                                                         π : I → O π −1  表示了使用唯一标识定位
                                                                          −1
                                                                                 .
                 π I (O 2 ). 且   ∀I ∈ I,∃O ∈ O 满足  π I (O) = I, 即  π I (O) 为双射. 设  π I  的反函数为
                                                                          I        I
                 和访问科研数据对象的过程.
                    3) 属性集  P 为一个键值对的集合, 对于属性         p i ∈ P, 有   p i = (k i ,v i ), 其中  k i  为该属性的键,  v i  为该属性的值, 满足
                                                                                              ,
                 ∀i, j,k i , k j . 科研数据对象  O 属性的键集合和值集合分别记作      K O ,V O , 有  K O = {k i | ∃v i ,(k i ,v i ) ∈ π P (O)} V O = {v i | ∃k i ,
                 (k i ,v i ) ∈ π P (O)}. 函数   ϕ O : K O → V O  为科研数据对象  O 的属性映射函数,  ∀k ∈ K O , ϕ O (k) = v 当且仅当  (k,v) ∈ π P (O). 对
                 于类型为    t    科研数据对象  , 存在一组必要属性集         K t , 表示这种类型的科研数据对象必须包含的属性, 满足
                                       t
                                     O
                   t                                                                                 P 主
                 ∀O , K t ⊂ K O t . 除必要属性集规定的属性外, 用户还可通过增加可选属性的方式扩展系统的表示形式, 属性集
                 要包括用于描述和发现科研数据对象的相关元数据.
                    4) 所有科研数据对象的属性集中都包含其类型,            ∀O∈O,type∈K O . 称  ϕ O (type) 为科研数据对象  O 的类型,  ϕ O (type) ∈
                 {code,paper,dataset,reproduction}.
                              E  表示科研数据对象所包含数据资源的实际内容, 为一个字节序列, 例如论文的                       PDF  文件、数据
                    5) 数据实体
                 集文件、源代码文件等.
                    图  1  中的对象①–⑧即为科研数据对象. 以对象③即文献               [33] 所对应的科研数据对象为例. 图         1  右侧的示例
                 展示了对象③的标识、属性集和数据实体. 其标识为文献                   [33] 的  DOI, 属性集包括此论文的标题、作者等信息,
                 数据实体即为此论文的        PDF  文件.

                                                                              标识



                                                                              属性集







                                                                              数据实体






                                                  图 1 科研数据关系图示例

                    本文的研究主要关注科研中使用的论文、代码、数据集这                     3  类数据, 因此科研数据对象包括论文对象、代码
                 对象和数据集对象这        3  种类型. 为了一致地表示复现单元和其他科研数据对象之间的关系, 本文将复现单元也建
                 模为一类特殊的科研数据对象. 实际上, 也可以将模型扩展到其他类型的科研数据, 以满足不同领域的科研数据管
                 理需求. 下面依次给出这些科研数据对象的定义.
                    定义  2 (论文对象). 对于   O ∈ O, 若  ϕ O P(type) = paper, 则称  O  为论文对象. 论文对象的数据实体  π E (O ) 为论
                                                                                                   P
                                                                   P
                                         P
                 文  PDF  文件. 定义论文对象的必要属性集为          K paper = {title,venue,abstract,publication_date,authors}, 对于任意的论
                        P
                 文对象  O , 都有  K paper ⊂ K O P , 并且有:
                    1)  ϕ O P(title) 为论文的标题;
                    2)  ϕ O P(venue) 为论文发表的期刊或会议;
   419   420   421   422   423   424   425   426   427   428   429