简介

创建和维护FAIR(可查找、可访问、可互操作和可重用)数据的关键挑战之一12-3.在生命科学中,是对从化学品、蛋白质、疾病到专利和出版物等实体的标准化识别。这些实体通常是在资源标识符(如本体论和数据库),如生物医学化学实体(ChEBI)4, UniProt5和PubMed,为每个实体分配一个本地唯一标识符(即注册编号)。每个资源为其实体的本地唯一标识符定义了一个内部一致的模式,例如UniProt标识符中发现的数字和字母的组合(例如,P0DP23)或在PubMed标识符中找到的简单数字(例如,29175850).统一资源标识符(uri)(例如,https://www.uniprot.org/uniprot/P0DP23)和紧凑资源标识符(CURIEs)(例如,uniprot: P0DP23)已成为生命科学中用于标识实体的主要语法,这些实体既编码实体起源的资源,也编码实体的本地唯一标识符6.uri对资源进行编码URI的前缀(例如,https://www.uniprot.org/uniprot/),而CURIEs用a来编码前缀(例如,uniprot).

然而,即使使用uri和curie,在建立一致性和互操作性方面仍然存在许多挑战。也就是说,可以使用几个不同的不兼容uri和curie来引用同一个实体。例如,本地唯一标识符P0DP23,以登入UniProt5关于Calmodulin-1蛋白可以由至少7个不同的uri和3个不同的curie表示(详见补充表1和2)。当试图整合多种资源时,这个问题就更加复杂了,这是现代计算生命科学的基石。例如,来自HUGO基因命名委员会(HGNC)的基因组数据7不能很容易地与来自Rhea的生化反应数据相结合8因为HGNC使用了前缀ec-codeRhea使用了前缀电子商务当引用酶委员会标识符资源中的实体时9.类似地,许多生物医学资源在酶委员会标识符资源中以不同的方式为同一实体构建局部唯一标识符,例如,1.4在IntEnz101.4.”- - - - - -基因本体论(GO)11,1.4 . *在ChEBI氧化还原酶作用于供体的CH-NH2基团

为了标准化uri和curie的用法,从而实现它们的互操作性,a注册表需要包含规范的、可验证的标识符资源定义,对于每个资源,这些资源包括前缀、URI前缀、本地唯一标识符模式和其他相关元数据。因此,注册中心为每个标识符资源捕获如何构造、解析和交换规范uri和curie。外部生物医学资源可以使用注册表来标准化它们引用实体的方式(例如,本体论中出现的数据库交叉引用),以促进与其他资源的集成,消费者也可以使用注册表来导航前缀及其相关元数据。多个注册511121314151617181920.21222324252627282930.31-32以前都是为此目的而构建的,但是它们在已知资源的覆盖范围和捕获关于这些资源的元数据方面都存在很大的差距。它们之间也缺乏互操作性,例如,国家生物技术信息分类中心数据库(NCBITaxon)33前缀为分类在Identifiers.org24NCBITAXON在BioPortal16

这些问题因现有注册管理和管理工作流程的缺陷而加剧,这些缺陷阻碍了它们在生命科学资源格局迅速演变时保持最新、值得信赖和参与社区的能力。这些问题包括,它们(1)是建立在一个机构内的私人基础设施上;(2)由小型私人团体维持,由于资金不足,这些团体难以响应请求;(3)外部捐助缺乏足够的支持;(4)既没有版本,也没有存档。作为通用注册表的替代方案,许多项目(例如,GO, Cellosaurus17NCBI GenBank26)已经创建了他们自己的注册表,但是,这些注册表只覆盖与给定项目相关的标识符资源,并且使用的标准只在内部与项目一致。最后,有几个服务充当注册中心,但在设计上限制了范围,只能包含一组选定的资源,并提供促进引用标准化所需的不完整元数据。其中包括开放生物医学本体(OBO)铸造厂27,本体查找服务(OLS)28,以及BioPortal16.关于现有注册中心的治理和维护模型的详细调查可以在补充表3中找到。总的来说,任何一个注册中心的内容都不能反映生物医学资源的演变情况,从而不能满足用户的需求。

为了克服现有注册中心的局限性,建立生物医学注册中心的新方法是必要的,理想地满足三个要求:(1)综合,(2)开放,(3)社区驱动。首先,一个综合注册中心重用、改进和扩展现有注册中心。鉴于现有注册中心定义了相互冲突的标准(例如,为同一标识符资源分配了相互冲突的前缀、URI前缀或其他元数据),因此缺乏互操作性,这就需要在每个注册中心中的资源之间进行对齐和协调。第二,一个开放Registry在一个公共的、版本控制的存储库中以许可的许可证提供其底层数据和相关代码,并依赖于免费的、公开的基础设施进行半自动化的质量控制和部署。第三,社区驱动的Registry征求社区成员的贡献,并提供适当的技术平台和治理结构来支持这一点。这个技术平台需要支持讨论和反馈,以及与底层开放数据、代码和基础设施紧密耦合的质量保证工作流。总的来说,这些属性有望促进注册中心的可持续性和寿命。

为了解决这些限制,我们引入了Bioregistry:一个综合的、开放的、社区驱动的元注册。Bioregistry集成了现有注册表中的内容,半自动地识别现有注册表中的记录之间的等价性,并使用新的工作流解决它们之间的冲突。这种对齐的结果使生物注册成为一个metaregistry(例如,注册中心的注册中心),对于每个资源,它维护跨注册中心映射,以作为冲突标准之间的互操作性层。Bioregistry还包括对没有出现在任何现有注册表中的资源的大量手工管理,以及对与这些注册表中的资源相关的元数据的额外管理,管理实践受到最相似的现有注册表(例如Identifiers.org和Prefix Commons)的严重影响。这一过程的结果是,Bioregistry在每个现有注册表的内容上(例如,在Identifiers.org上扩展了81%)以及所有一致的注册表的组合,并纳入了现有注册表的维护者和开发人员的反馈。与现有的注册表相比,Bioregistry还提供了更高粒度的数据模型,从而更好地支持集成。Bioregistry使用开源代码、开放数据构建,并利用公共基础设施和自动化来支持其维护和扩展。此外,它具有定义良好的贡献准则和多机构治理模型,使更广泛社区的贡献能够直接支持项目的寿命。

Bioregistry(0.5.132)整合并对齐了以前在23个外部注册中心策划的内容,总共包含1,504个单独的记录。这些记录扩展到每个先前的注册中心(例如,在Prefix Commons中有838条记录)30.Identifiers.org网站上有774个24),以及所有相关注册表的总和:生物注册表的1504项记录中有192项是新记录,即它们没有出现在任何现有的注册表中。Bioregistry还为剩余的1312条记录中的969条(占所有记录的74%)添加了新颖的策划元数据。表中提供了在Bioregistry中捕获的内容的摘要1.我们在“结果”部分提供了详细的度量标准和与其他资源的比较。

表1 Bioregistry版本0.5.132(2022-10-17)概述统计信息。

Bioregistry已经与几个旨在数据集成、知识组装和语义注释出版物(包括BridgeDb)的项目集成在一起34, PheKnowLator35, Manubot36, Biomappings37, SSSOM38,因陀罗39和OBO铸造厂27

生物注册中心可透过互动网站(https://bioregistry.io),一个openapi文档的web服务(https://bioregistry.io/apidocs)、Python软件包(https://pypi.org/project/bioregistry),以及Docker映像(https://hub.docker.com/r/biopragmatics/bioregistry).所有底层数据、代码和治理文档都可以通过GitHub (https://github.com/biopragmatics/bioregistry),并在Zenodo上存档40

结果

生物登记数据模型

Bioregistry使用粒度和可扩展的数据模型来表示标识符资源的记录。每条记录的必需字段包括一个规范前缀、一个人类可读的标签、一个主页和一个描述。数据模型还允许多个可选字段,包括许可证、版本、资源的前缀同义词,以及捕获资源是废弃的还是专有的。每条记录还可以包括一个示例本地唯一标识符、一个用于验证本地唯一标识符的正则表达式模式和一个用于从本地唯一标识符构造URI的URI格式字符串。描述本体的记录可以包括相关OBO、OWL和OBO Graph JSON工件的可选下载链接。为了保持贡献的可追溯性并提供属性,每个记录都捕获对条目做出贡献的提交者和审查者。还可以将记录分组到集合中,以便更好地进行上下文化,例如对语义Web有用的前缀(例如DC、FOAF、RDF、RDFS)。

表中生物注册表和外部注册表的数据模型和各种属性之间的比较2展示了外部注册中心元数据标准的异质性,以及生物注册中心在表示更细粒度元数据方面的灵活性。例如,这使生物注册表能够为后代表示废弃和过时的记录,例如hgnc.genefamily(HGNC基因家族资源41),由hgnc.genegroup,casspc(埃施梅尔的鱼类目录42),由硬骨骨分类本体使用43脊椎动物分类学本体论44但它本身从未出版。

表2 23个外部注册中心的数据模型、功能和质量概述,这些外部注册中心涵盖生物医学本体、受控词汇表和Bioregistry导入的数据库。

重要的是,Bioregistry不仅捕获单个资源记录,还捕获记录之间的语义关系(包括例如,取决于,它断言一个资源重用来自另一个资源的术语,例如GO依赖于ChEBI,以及每个资源到它出现的外部注册中心的映射。这些附加的关系构成了生物注册的关系metaregistry,这个术语表示它通过一组跨注册表映射在以前不兼容的资源之间创建链接。

生物注册数据模型将在补充章节3中进一步详细描述。

现有注册中心的整合和协调

Bioregistry从表中描述的23个外部注册中心导入记录2.我们将注册中心划分为不同的组,并对这些组应用不同的导入策略,从完全导入注册中心到只导入选定记录的元数据(请参阅方法)。Bioregistry使用了一个多阶段的过程,在这个过程中,注册表被顺序地导入,这样来自给定注册表的记录要么(1)与现有的Bioregistry记录对齐,然后创建一个跨注册表映射(2)作为一个新记录添加,或者(3)留出供手动管理(参见方法)。这个导入过程中的关键挑战是对齐(即,找到相等的记录),因为外部注册中心的记录部分重叠但不一致。这种不一致源于现有注册表在大小写(例如go vs. go)、标点(例如go . go)使用方面的高度异质性。Ec-code vs eccode)、缩写(例如:Flybase vs. fb),甚至不同的词汇(例如,Intenz和eccode)来表示相同的资源,这会导致碎片化和缺乏互操作性。生物注册表的一个新贡献是,它显式地将其对齐过程的结果表示为它自己的记录和外部注册表中的记录之间的等价映射。这构成了一个跨注册表映射的网络(以Bioregistry为中心),创建了一个元注册表。Bioregistry的对齐过程总共恢复了7150个这样的跨注册中心映射,从而将以前断开连接的现有注册中心之间的资源连接起来。重要的是,生物注册中心不导入或重新分配外部注册中心描述的资源,外部注册中心本身可能具有限制性许可(例如,ICD-10)。此外,Bioregistry并没有将丰富的元数据推回到现有的注册中心,而是以多种格式(在导出工件一节中描述)在许可许可下提供其内容,这些格式可以由每个外部注册中心的维护者单独处理,以最佳地满足他们的需求。

我们还整理了423个同义词,用于引用注册表之外的标识符资源,例如OBO Foundry本体数据库的交叉引用。这些同义词支持注册表对齐工作流,并扩展了Bioregistry标准化标识符资源引用的能力,而不仅仅是外部注册表。

我们调查了集成的Bioregistry的内容如何与它导入和对齐的每个单独的外部注册表进行比较。1).它涵盖了几个注册中心(BioContext14, CHEMINF18作物本体管理工具(CropOCT)19, OBO铸造27, OLS,名称到事物(N2T)25, Identifiers.org24)(超过85%的外部注册中心的记录被映射到一个生物注册中心的记录上),同时显著扩展了每个记录的内容,从Identifiers.org的最低+94%扩展到CHEMINF的最高+ 7076%。生物注册中心能够在外部注册中心(如FAIRSharing)中调整较小比例的记录22(33.3%)、BioPortal16(31.3%)、Aber-OWL12(23.8%)和Wikidata(20.7%),这是由于每个注册中心的几个特点。例如,FAIRSharing中的许多记录22Wikidata包含许多缺乏生物范围的记录,Aber-OWL和BioPortal包含异构质量的本体,这些本体是排队按需包含的,而不是自动摄取到生物注册表中(参见方法)。尽管其条目的覆盖率较低,但Bioregistry仍然大幅扩展了这些外部注册表,Aber-OWL的最低覆盖率为+86%,EcoPortal的最高覆盖率为+ 6000%22

图1
图1

一个) Bioregistry的前缀与其集成的外部注册表之间的成对重叠(在水平橙色条中)的摘要。水平的蓝条显示无法自动对齐的记录,水平的绿条表示Bioregistry中可用的其他前缀,但不包括外部资源。外部注册中心与生物注册中心合并的记录的绝对数量(考虑已知的重叠)显示在右侧,括号中显示的是生物注册中心引入的相对增益百分比。较大的橙色部分对应于高内容重用,而较大的蓝色部分对应于外部注册中心内容的高新颖性或半自动化导入到Bioregistry的高潜力。这些条形图中表示少于70个前缀的部分的计数被省略。(b)一个直方图,显示生物注册表中每个条目对外部注册表有多少交叉引用。绿色条突出显示只出现在Bioregistry中没有交叉引用的前缀。(c)描述生物注册中心作为外部注册中心之间互操作层的示意图。以NCBI Taxonomy标识符资源为例,在Bioregistry对齐的外部注册中心中用于此资源的前缀显示在紫色框中。此资源在Bioregistry中管理的其他同义词显示在橙色框中。该图的组件每天用GitHub Actions重新生成,并存储在https://github.com/bioregistry/bioregistry/tree/main/docs/img

然后,我们调查了每个标识符资源在多个注册中心中出现的频率(图2)。1 b).我们发现,在23个外部注册中心中,只有7个资源出现在13个以上的注册中心中(包括GO、ChEBI和NCBITaxon等知名资源),没有任何资源出现在17个以上的注册中心中,这进一步说明了现有注册中心的碎片化状态,以及整合注册中心在提高覆盖率方面的好处。此外,生物注册表包含192个在任何其他注册表中都没有的新前缀(图2)。1 b(绿色条),它们是出于各种各样的原因策划的。例如,我们系统地审查了OBO Foundry本体中的交叉引用,发现了许多引用资源的前缀,这些资源没有外部注册表包含条目,并将它们添加到Bioregistry中。一些新的前缀是由外部贡献者提出的,他们本身就是相应资源的维护者。这些条目的另一个子集是由遇到它们的社区成员添加的,然后被激励在Bioregistry中为其创建一个条目。

接下来,我们研究了NCBITaxon,它是现有注册中心中出现最多的资源之一。此标识符资源出现在17个外部注册表中10个不同的前缀下,包括分类单元分类,NCBITaxon(无花果。1 c(未全部显示)。此外,Bioregistry还管理9个前缀同义词(例如,NCBI_Taxon_id uniprot。分类,NCBI_taxid)出现在各种非注册表生物医学资源中,这表明给定标识符资源的使用具有高度异质性。Bioregistry中的这种跨注册中心映射和同义词使其能够充当互操作性层,以实现跨大量外部注册中心和非注册中心资源的标准化。

用于交互和编程使用的Web门户

生物注册中心的内容可透过网页浏览https://bioregistry.io如图所示。2.门户实现了强大的搜索功能,帮助用户查找在各种数据库、本体和其他生物医学资源中遇到的前缀和curie。搜索特性不仅可以扩展到每个记录的前缀、同义词、标题和描述,还可以扩展到来自外部注册中心的链接记录中的所有对应字段(图2)。2).可以浏览完整的前缀列表(图。2 b),每个前缀页面组织和上下文化所有信息,这些信息来自生物注册中心的新管理以及从外部注册中心导入的信息(图2)。2 c, d).值得注意的是,当映射可用时,它链接到外部注册表页面。例如,NCBITaxon的页面(https://bioregistry.io/ncbitaxon)链接到大量外部注册表页面(图。2 e).除了Bioregistry中的数据外,该页面还为第一方提供者、第三方提供者(例如OntoBee)构造示例uri29(例如,Identifiers.org, N2T),使用存储在底层Bioregistry Python包中的关于外部注册表和编程逻辑的信息的组合。2 f).该门户网站还提供了其他一些特性,包括为集成到Bioregistry的每个外部注册表生成页面,显示它们的各种属性和功能,方便管理和显示用户生成的前缀集合,例如:的语义web前缀列表https://bioregistry.io/collection/0000002,并列出贡献者。门户还实现了一个解析器,该解析器允许统一构造来自CURIE的URI,这些URI根据注释到CURIE前缀的URI格式字符串自动重定向到适当的位置。Bioregistry的解析器使用URI方案https://bioregistry.io/<前缀>:< local-unique-identifier >,类似Identifiers.org和N2T使用的解析器方案。Bioregistry还提供了一个与编程语言无关的RESTful接口,可以访问所有功能(例如,搜索、自动补全、记录检索、URI生成),并在OpenAPI/Swagger中进行了记录https://bioregistry.io/apidocs.用于生成每个页面的底层数据可以以各种格式下载,包括JSON、YAML、TSV、RDF和其他格式(如适用)。最后,门户作为连接到围绕Bioregistry的代码、数据、文档和叙述的链接的枢纽。

图2
图2

网站截图。(一个)的网页https://bioregistry.io突出的特点是结合前缀搜索和居里解决框以及链接到该网站的所有组件。(b)可以查看前缀、资源名称和描述的完整注册表,并进行全文搜索。(c)每个前缀页显示有关相应资源及其标识符的元数据,并作为(d), (e),及(f).(d前缀页还包括元注册表从前缀到外部注册表前缀的跨注册表映射。(e)每个外部注册表页面显示元数据和外部资源的能力列表。(f)一个示例标识符演示了所有可以解析的提供者。

作为主Bioregistry站点的伙伴,将自动生成一个静态站点并将其部署到其中https://biopragmatics.github.io/bioregistry使用GitHub的基础设施。值得注意的是,这包括一个卫生报告每周检查哪些生物注册资源的主页仍然可以访问(即,不会返回HTTP 404或其他连接错误),哪些资源的URI格式字符串仍然有效。该网站提供了一个高级的摘要,说明哪些资源最近失效了,以及一个详细的、彩色编码的表,反映了所有Bioregistry记录的状态。最终,该网站可以帮助更系统地监测和改善生物医学资源的维护。

为数据集成和可重用性导出工件

bioregithub存储库包含数据库的根内容(即注册表、元注册表和集合),作为版本控制设置中的JSON文件,作为唯一的真相来源。此外,它还提供了一些派生的工件,这些工件旨在促进与下游系统和资源的集成。这些导出的工件每天都会重新生成,并且可以通过web门户访问http://bioregistry.io/download并在泽诺多存档40

除了原生JSON格式外,Bioregistry数据还作为一组YAML和TSV文件提供,以方便重用。此外,外部注册中心中资源之间的等价映射被导出到共享本体映射的简单标准(SSSOM)38格式。SSSOM是在不同名称空间之间共享映射的标准,我们用它来表示出现在不同注册中心中的资源之间的映射,例如图中所示的关系。1 c

Bioregistry还提供了许多工件,以促进与语义Web上下文和链接开放数据的集成。首先,我们为Bioregistry构建了一个RDF模式,该模式重用来自通用语义Web词汇表(例如DC、FOAF)的元素,并在bioregistry.schema词汇表见https://bioregistry.io/schema.生物注册表的所有组件(即注册表、元注册表、集合)在此模式下以几种常用格式(包括N-Triples、Turtle和JSON-LD)联合导出为RDF。这允许使用三重存储(例如Virtuoso)或编程库(例如Python的RDFLib)加载生物注册表,然后使用SPARQL进行查询。我们还组装了一个派生自RDF导出的网络,可以在网络数据交换(network Data Exchange, NDEx)上以交互方式浏览。45可以在https://bioregistry.io/ndex:860647c4-f7c1-11ec-ac45-0ac135e8bacf

最后,Bioregistry提供了几个语义Web上下文,每个上下文将一组前缀(例如chebi)映射到相应的URI前缀(例如,chebi)。http://purl.obolibrary.org/obo/CHEBI_).它们是使用一组策略从根数据派生出来的,这些策略用于为注册中心中的资源选择首选的前缀和URI格式。除了包含所有Bioregistry的通用上下文之外,我们还提供了用于与OBO Foundry集成的特定于应用程序的语义上下文,以及仅限于对通用语义Web资源有用的前缀的上下文。

维护模型和治理

与现有注册中心采用的维护和治理结构相比,Bioregistry采用了一种依赖于开放数据、开放代码、开放基础设施、自动测试和自动更新的替代方法。类似的模型已经在现有的大型合作项目(如OBO Foundry)中被采用,并取得了巨大的成功。我们通过几个步骤来实现这一点。首先,使用GitHub存储生物注册数据并进行版本控制(参见方法)。其次,任何人都可以直接向Bioregistry存储库提交拉取请求,或者填写适当的问题模板来触发自动生成拉取请求,从而提出添加或更改建议。两者都创建了一个开放的讨论论坛,邀请各种各样的利益相关者参与(实现细节在方法中)。第三,使用GitHub允许质量控制和质量保证工作流的技术实现,这些工作流与拉请求耦合在一起,以确保所有更改都符合预定义的标准集,这些标准在贡献指南中明确和公开地描述(https://github.com/biopragmatics/bioregistry/blob/main/docs/CONTRIBUTING.md),以及在质量保证工作流程的执行过程中隐含地体现。除了开放数据、开放代码、开放基础设施理念外,Bioregistry项目还在如何建立一个治理模型方面寻求社区指导,该模型对积极参与和调节项目的资金和人员的波动更加稳健。为此,政府成立了检讨小组和发展小组,以及公共最低限度管治模式(https://github.com/biopragmatics/bioregistry/blob/main/docs/GOVERNANCE.md),描述了如何引入新成员,如何删除成员,他们分别拥有技术权威和社区责任,以促进并最终判断对底层数据库的更改,并对代码库进行更改,以及如何随着时间的推移改进治理模型。这些团队最初由来自不同科学背景、地点和机构的成员组成,以进一步促进项目的持久性。这些指导方针还包括对作者的自由政策,以进一步证明项目对包容性的承诺。

用例和集成

在这里,我们重点介绍几个已经采用了生物注册的各种功能的项目和标准。

支持可互操作的数据注释

有几个项目使用Bioregistry来创建前缀映射,或前缀之间的映射(例如,uniprot)及其对应的URI前缀(例如:https://www.uniprot.org/uniprot/).它们支持语义Web应用程序中数据注释的互操作性以及uri和curie之间的转换。共享本体映射的简单标准(SSSOM)38是一种元数据标准,用于本体和数据库术语之间的各种映射(例如,等价)以及相关的工具集(https://github.com/mapping-commons/sssom-py)基于LinkML (https://linkml.io)用于加载、验证和转换SSSOM内容。该标准旨在鼓励在生物医学本体中进行更高质量的管理,这些本体通常缺乏重要的元数据,如映射类型、主题和对象术语的标准化前缀和本地唯一标识符、关于如何生成映射的出处以及关于谁生成映射的出处。验证中使用的默认前缀映射由Bioregistry按照补充章节6.1中描述的过程生成。

Manubot36是一个开放协作写作的工具,旨在为学术出版带来自动化、可定制性和透明度。在Manubot中,用户使用markdown编写手稿,并特别支持由表示为curie的持久标识符引用,例如(@doi: 10.1371 / journal.pcbi.1007128)(然后可以自动转换为完整的引用)。在参考临床试验等不可引用的手稿资源时(例如,在COVID-19的综述中),在手稿中嵌入CURIEs尤其有价值46).Manubot最初通过合并Identifiers.org增加了对700个CURIE前缀的支持,但后来切换到Bioregistry,后者在当时增加了对额外365个前缀的支持。除了更全面之外,Bioregistry的开放贡献模型还允许解决Identifiers.org的几个长期存在的问题,包括无效的正则表达式模式、缺少前缀以及由于一些名称空间冗余嵌入到标识符中而导致的不一致。

我们讨论了在进一步的软件和资源(包括生物链模型)中采用生物注册表进行互操作数据注释的计划和考虑因素15以及基因组资源联盟47附录第7条。

实体引用的验证和质量控制

有几个项目使用Bioregistry来标准化或验证前缀和本地唯一标识符,并促进互操作性和可重用性。Biomappings31https://github.com/biopragmatics/biomappings)是一个存储库,用于在不同标识符资源中的等效(或其他相关)生物医学实体之间进行策划和预测映射。它包含几个使用Gilda生成预测映射的工作流48并提供了一个基于web的管理界面,用于审查预测映射和添加新映射。生物标记通过使用Bioregistry验证存储库中的所有前缀和本地唯一标识符来确保数据完整性。此外,管理界面使用Bioregistry生成到描述每个生物医学实体的网页的链接,使管理更容易。biom还生成基于web的内容摘要,该摘要使用Bioregistry提供标识符资源的链接并解析curie。

集成网络和动态推理汇编器(INDRA)39将来自多个数据库的生物医学知识与科学出版物的文本挖掘结合起来,以构建可执行模型。在执行组装时,INDRA维护对基于一个或多个标识符资源的生物医学实体的引用。它使用Bioregistry首先检查这些基础中使用的前缀是否标准化,然后根据Bioregistry提供的模式验证相关的惟一本地标识符。这种验证对于保持INDRA自动化装配工作流程的一致性至关重要。

表型知识转换器(PheKnowLator)35生态系统使用本体论和推理构建FAIR生物医学知识图,并添加非本体论数据源。PheKnowLator使用Bioregistry来标准化来自两种数据类型的curie和uri中的引用,从而为下游用例提供语义一致的结果。Bioregistry有助于克服本体带来的重大挑战(例如,随着时间的推移而改变名称空间,不来自本体的数据不能提供有效的名称空间或uri)及其集成。Bioregistry API已经成为构建过程的重要组件,用于标准化所有实体和三元组的uri。它还为扩展PheKnowLator的测试工具提供了新的机会。总的来说,Bioregistry的加入改善了PheKnowLator生态系统及其生成的知识图表。同样,“图形表示学习、预测和评估”(GRAPE)软件包(https://github.com/AnacletoLAB/grape)使用Bioregistry来规范化几个网络和知识图(包括PheKnowLator)中的标识符。

将实体与网站链接结合起来

有几个项目使用Bioregistry在api或面向用户的网站中生成和解析uri,以便为它们引用的实体提供额外的上下文。BridgeDb34是一个web服务,它在表示等价实体的不同标识符资源的本地唯一标识符之间进行映射(例如,P0DP23在UniProt和Q17855525在Wikidata中为Calmodulin-1蛋白)。Bioregistry已经集成在BridgeDb的Java和R客户端以及Bacting中49支持基于标准化CURIE的查找,支持创建内部BridgeDb标识符对象通过标准化的CURIEs,并生成可通过Bioregistry web应用程序解析的uri。

生物注册还被用于几个网站,为人类基因、蛋白质复合物和其他实体生成url。例如,DUB门户50是一个总结去泛素化酶的实验分析的网站,并使用Bioregistry链接到人类基因HGNC和FamPlex词汇表中的蛋白质家族51.FamPlex网站(https://sorgerlab.github.io/famplex)亦使用生物登记系统来规范及连结人类基因的参考资料;到InterPro的等价映射52医学学科标题(MeSH)53, GO,复杂的传送门54, NextProt55用于蛋白质家族和复合物;以及PubMed和PubMed Central出版物的参考资料。类似地,BERN2的交互式用户界面56命名实体识别平台标准化其生物医学实体,并使用生物注册生成链接。

对外部注册中心的统一访问

由于它集成了外部注册中心,Bioregistry对于统一访问各自的数据也很有用。OBO代工厂27通过一套指导原则和社区组织促进生物医学本体的协调发展。其关联的存储库(https://github.com/OBOFoundry/OBOFoundry.github.io)存储关于每个本体的结构化元数据,包括它们首选的前缀、标题、主页、描述和用法。生物注册表用于支持这些元数据的标准化和维护,具体描述详见补充章节6.2。

讨论

我们介绍了生物注册,一个生物医学标识符资源的综合注册。Bioregistry采用了一种新颖的管理方法,通过从外部注册中心导入和协调数据,可以进一步改进和扩展新颖的管理。它依赖于开放数据、开放代码、开放基础设施的理念,并结合新颖的治理策略来促进社区的贡献和参与,并确保其寿命和采用。它使用公共基础设施进行质量保证、分发和部署,以提高透明度、降低成本,并将其长期维护与特定的机构、资金来源或维护者组分开。虽然Bioregistry显示了比其他注册中心更高的覆盖率和元数据粒度,但它还通过其高度许可的CC0许可明确鼓励重用和重新分发。

限制

Bioregistry中表示标识符资源的条目、它们首选的CURIE前缀和其他元数据是从外部注册中心(如Identifiers.org和N2T)半自动集成的,或者直接在Bioregistry中手动管理。Bioregistry半自动地从外部注册中心导入和调整内容的设计选择对于保持广泛的覆盖范围和跨多个项目分配管理工作非常重要。然而,这仍然对一致性提出了挑战。也就是说,生物注册中心在其他注册中心执行指南和公约的能力有限。例如,在居里夫人优先字首的大小写方面,学界有不同的意见(例如chebivsCHEBIChEBI)用于标识符资源。使用其他注册中心也可能导致未来的冲突,即多个注册中心为两个不同的标识符资源选择相同的CURIE前缀,从而产生必须在生物注册中心进行追溯仲裁的情况(补充章节5.2中给出了一个例子)。尽管如此,生物登记处仍有指导方针(https://github.com/biopragmatics/bioregistry/blob/main/docs/CONTRIBUTING.md#submitting-new-prefixes)用于创建新的标识符资源前缀,如果遵循这些前缀,可以缓解这些问题。此外,Bioregistry的职权范围并没有扩展到直接建议和指导新标识符资源的创建者在其标识符方案中做出正确的选择。这类资源的创建者可以依赖McMurry提出的建议6

在新资源中采用Bioregistry的前缀、curie和uri标准是很简单的。但是,将其应用于现有资源可能会带来挑战。它可能需要更新资源本身以及资源的下游消费者中的数据和相关代码。这可以通过几种方式表现出来,包括更新非标准同义词(例如,许多本体使用MSH作为MeSH的非标准前缀),更新CURIEs的非标准结构(例如,使用Identifiers.org规定的冗余前缀,如in去::0006915),或更新非标准uri(例如,切换所有ORCID uri以使用https协议)。如果这样的更改在资源中不可用,仍然可以实现到Bioregistry的映射,或者根据Bioregistry标准创建自定义导出,这可能会拓宽资源的互操作性。

Bioregistry提供了一种解决方案,用于标准化标识符资源中对单个条目的引用。然而,通常情况下,多个标识符资源包含表示等效实体的条目(例如,表示相同疾病的多个疾病本体),这导致在集成不同的资源时(例如在构建知识图时)出现冗余。在表示出现在多个资源中的实体时,确定哪个标识符资源优先级超出了Bioregistry的范围。然而,Bioregistry可以帮助标准化不同标识符资源中等价实体之间的交叉引用(实际上,交叉引用通常使用非标准的curie和uri),从而帮助解决它们之间的冗余问题。

虽然生物登记处仅限于生命科学研究人员感兴趣的资源,但其方法和技术实施可以扩展到其他科学领域。最终,生物注册表可以作为在其他领域创建特定领域元注册表的模板,也可以作为跨多个科学领域创建元注册表的基础。

生物登记的未来工作

在生物注册的初始开发、部署和早期采用之后,仍然存在两个持续的挑战。第一个目标是维护、丰富和扩展注册中心的内容,以最好地反映生物医学标识符资源不断变化的现实。虽然以前的注册中心没有实现这一点,但生物注册中心的技术基础设施和治理模式的结合将以可持续的方式实现这一努力。此外,我们计划开发工具和管理实践,以主动、系统地识别新的资源,添加到生物注册。

第二是建立和维护一个用户社区。这需要继续吸引多个用户组和利益相关者。这包括策展人,生物医学资源的消费者,以及设计自动化数据或知识提取和聚合系统的小组。为了满足这些社区的需求,需要确定他们面临的挑战,并相应地改进Bioregistry的数据模型、工具和内容。它还需要促进不同个体之间的讨论,并提供使用生物注册及其哲学的培训。为此,作者计划组织一系列循环的社区研讨会(在2021年举行的初始研讨会之后(https://biopragmatics.github.io/workshops/WPCI2021)围绕标识符资源和注册表的主题。

未来的愿景

我们设想生物注册可以更广泛地用于促进和支持数据、模型、本体和科学文献的标准化注释。首先,通过出版物和数据存储库提供的越来越多的数据通常缺乏对其记录的标准化注释(例如,表中的列,知识图中的节点/边)。如果被不同的生命科学工具和资源的管理员、开发人员、维护者和用户所采用,生物注册可以提供一种一致的方式来注释这些数据,使它们更加公平,特别是促进重用。

其次,我们设想Bioregistry支持与模型和网络相关的结构化元数据的标准化,这些模型和网络来自于数据,如机械模型(例如,在biommodels数据库中)57)、基于网络的模型(如NDEx中的模型)、知识图(如Bonner所描述的知识图)58)和机器学习模型(例如,由GRAPE训练的机器学习模型(https://github.com/AnacletoLAB/grape)),以促进它们的互用性和重用。例如,尽管最近生物医学知识图表激增58在美国,用于识别节点和边的标准化语法或语义几乎没有达成一致。Bioregistry可以在低级别上支持这一工作,也可以通过集成到更高级别的工具来生成和交换类似图的数据,如KGX和Biolink(参见补充7.2节),它们支持更多的用例。更一般地说,我们相信这将使越来越多的机器学习研究人员能够以新颖的方式组合生物医学数据集。

这一愿景与最近对此类模型的可重复性评估的建议很好地吻合59强调了使用高质量控制词汇表(如GO和ChEBI)进行注释的更普遍的重要性。

第三,尽管生物医学本体在数据注释方面已被证明是无价的,但关键本体仍然缺乏交叉引用的标准化27,使得在本体和其他结构化数据源之间进行合并和推理变得困难。鉴于本体通常以标准化格式(例如,OBO, OWL)在公共版本控制的存储库中进行管理,因此可以使用Bioregistry来支持它们的半自动标准化和维护,以减少管理负担并增强它们在数据集成场景中的价值。

最后,我们设想学术出版商可能采用Bioregistry来支持作者提供的文本中命名实体的标准化注释(例如BioFactoid)60),从而减少了为创建结构化表示而对出版物进行昂贵且容易出错的后处理(如自动命名实体识别(NER))的需要。

方法

Bioregistry存储库将数据紧密耦合到一个Python包中,该包便于加载、访问和修改根数据文件。它提供了一些高级数据结构和工作流,用于访问和推理Bioregistry和外部注册中心的集成数据,支持质量保证工作流(如上所述)、web应用程序(如上所述)、对齐工作流(如下所述)、派生工件的生成(如上所述)和其他面向用户的功能,如前缀标准化、CURIE标准化和URI解析。Python软件包的完整文档可以在https://bioregistry.readthedocs.io

对齐

当向Bioregistry添加新前缀时,手动管理到外部注册表的映射是可行的,但对外部注册表的频繁更新推动了定期自动化和半自动化对齐的开发和应用。我们首先根据所有外部注册中心的可用元数据、生物医学范围、重点为资源分配全局前缀和治理将所有外部注册中心分为三类。具有元数据可用性、生物医学范围并专注于分配全局前缀的第一组包括Identifiers.org、OBO Foundry、OLS、N2T。第二组包含GO、NCBI、UniProt、Cellosaurus和FAIRSharing等注册中心,这些注册中心包含不对应于从导入中排除的标识符空间的条目。它还包括了像BioContext和biopportal这样的注册中心,因为元数据不足,通常无法确定元数据引用的是什么标识符资源。第三组包含元数据最少或缺乏生物医学重点的注册中心,如Prefix.cc。对齐算法首先根据规范前缀、首选前缀和所有前缀同义词(关于数据模型的详细信息见补充章节3,关于该过程的示意图见补充图2)为生物注册表中的每个资源生成一个查找表。Bioregistry中的前缀策略和自动质量保证检查确保这个查找表中没有冲突。对于每个外部注册表,数据被下载,规范化,并且恰好有一个字段被注释为外部前缀(参见补充图1)。所有已经映射到外部注册表中的外部前缀的生物注册表前缀都从查找表中删除。类似地,所有已经有映射的外部前缀都不会被新映射考虑。 Each external prefix that matches an entry in the lookup table is assigned an automated mapping. A manually curated list of incorrect mappings and collisions are used to post-process the automated mappings and remove false negative mappings (see Supplementary Section 5.2). External prefixes that could not be mapped to a Bioregistry prefix are handled based on their stratification. For the first group of registries, the prefix is added as a new record to the Bioregistry. For the second group of registries, the prefix is added to a curation sheet along with its relevant metadata (e.g., title, homepage, example identifier) for later manual curation. For the third group of registries with minimal metadata, no report is made.

通过自动化促进可持续发展和长寿

Bioregistry托管在GitHub上(https://github.com/biopragmatics/bioregistry),以利用其公共的、基于云的版本控制、协作和工作流管理平台。Bioregistry的真实数据(即根数据)的单一来源存储在版本控制中。这将隐式地使用git提交哈希来对所有微小的更改进行版本化,并允许git标记用于调解发布,这些发布将自动归档并重新分发到GitHub和Zenodo (https://zenodo.org).

Bioregistry使用GitHub Actions作为持续集成服务来运行代码和数据质量保证,以促进资源的可维护性和完整性(参见补充章节4.1)。它们进一步支持自动生成拉取请求的工作流,并通知审阅人员,使非技术用户能够提交资源。Bioregistry进一步使用GitHub Actions作为持续交付和持续部署系统来运行前面提到的对齐工作流,生成派生工件,将代码发布到Python包索引(PyPI),在Docker Hub (https://hub.docker.com),将web应用程序部署到Amazon web Services (https://aws.amazon.com)(见补充第4.2条)。结合起来,持续集成、交付和部署服务允许Bioregistry的贡献者和消费者更容易地提出改进,作为一个社区审查它们,并看到它们反映在数据和网站上,而不需要项目团队的人工干预。使用完全免费、公共和开放的公共基础设施来实现这一目标,通过减轻货币需求来促进寿命和可持续性。此外,部署web服务和托管的技术要求也被降到最低,例如托管成本约为33美元/年,计算成本约为27美元/年(见补充章节4.3)。