재사용: 기존 온톨로지를 조사하고 정렬하기
📍 현재 위치: 제2부 · 재사용 — 수명주기의 두 번째 단계로, NeOn의 재사용 시나리오와 LOT의 재사용 우선 저작 규율이 다스립니다. 명세는 작성되었고 러닝 예제는 로드 가능합니다. 새 클래스를 단 하나 그리기 전에, 우리는 장을 보러 갑니다. 세상이 이미 발행해 둔 것을 조사하고, 무엇을 빌릴지 결정하며, 그 빌림을 하나의 파일로 적어 둡니다.
온톨로지에서 가장 값싼 클래스는 결코 직접 저작할 필요가 없었던 클래스입니다. 명세는 모델이 무엇에 답해야 하는가를 고정했고, 재사용 단계는 그 답이 이미 얼마나 존재하는가를 고정합니다. CHO 단클론항체 캠페인의 경우 그 답은 거의 전부입니다. 세포주가 만들어진 중국 햄스터는 공개된 생명의 나무 위의 한 노드이고, 세포가 분비하는 IgG 복합체, 그것을 브로스에서 끌어내는 Protein A 포획 단계, 그 단계가 돌아가는 크로마토그래피 매질, 그리고 피드 속도가 그 인스턴스가 되는 "공정 파라미터"는 각각 어딘가에 안정적인 IRI와 그것을 유지하는 커뮤니티와 함께 발행된 클래스입니다. 재사용 우선은 절약 그 자체를 위한 검소함이 아닙니다. 그것은 사적인 캠페인 그래프가 사후에 아무도 예산을 잡지 않는 개조를 거친 뒤가 아니라, 로드되는 그 순간 생명의학·제조의 나머지 세계와 상호운용 가능해지는 유일한 길입니다 [4].
주방을 짓기 전에 나사를 직접 벼리지는 않습니다. 표준 나사, 표준 배관 피팅, 표준 전기 소켓을 삽니다 — 내년에 설치할 식기세척기가 바로 그것들을 기대하기 때문이고, 손수 만든 소켓은 영영 손수 만든 식기세척기를 뜻하기 때문입니다. 온톨로지를 재사용한다는 것은 표준 부품을 사는 것입니다. 나사는 "중국 햄스터"에 대한 NCBITaxon이고, 배관 피팅은 "Protein A 포획"에 대한 iof:CaptureStep입니다. 이 장은 철물점 나들이입니다 — 진열대를 둘러보고, 부품을 고르고, 부품 목록을 적는 일을, 어떤 맞춤 용접이 시작되기 전에 끝냅니다.
질문에서 출발하라
재사용은 이 책의 단 하나뿐인 비기능 요구사항(non-functional requirement)을 운용화한 것입니다. ORSD는 재사용 우선 — "공개 온톨로지에 정렬하고, 진정으로 로컬한 것만 발행하라" — 를, 어떤 단일 역량 질문과도 무관하게 모델이 가져야 할 품질로 나열합니다. 그러나 그것은 하나의 기능 질문도 직접 떠받칩니다. CQ-20은 세포주가 그 산물을 발현하는 숙주 생물은, 안정적인 NCBI Taxon IRI로 무엇인가?를 묻습니다 — 그리고 CHO 세포주에 대한 유일하게 정직한 답은 모호한 세 글자 문자열 "CHO"가 아니라 obo:NCBITaxon_10029로 명명된 Cricetulus griseus입니다. 그 질문은 모델이 NCBI Taxonomy를 이미 재사용했을 때에만 답할 수 있습니다. 결코 빌린 적 없는 안정적인 분류군 IRI를 반환할 수는 없기 때문입니다. 그리고 그 질문이 중요한 까닭은 숙주가 계보에서 가장 깊은 사실이기 때문입니다 — 세포주는 살아 있고, 돌연변이하며, 표류하므로, 그 종을 공개 데이터베이스와 공유하는 안정적인 식별자로 명명하는 것은 오인식된 뿌리가 완전한 확신을 가지고 그 아래 모든 배치로 전파되는 일에 맞서는 첫 방어선입니다. 따라서 재사용은 문체적 선호가 아니라, 특정 안전 필수 테스트가 통과하기 위한 전제 조건이며, 바로 그래서 수명주기는 그것을 개념화 이전에 두고 마무리 손질로 취급하지 않습니다.
재사용을 개념화하라: 하나의 배치에 뿌리내린 계층별 조사
온톨로지는 쌓이고, 제조상의 이유로 쌓입니다. 항체 한 배치는 한 종류의 사물이 아니라 여러 종류의 사물이며, 각 종류는 서로 다른 계층으로 가장 잘 기술됩니다. BATCH-2026-001을 봅시다. 배치 물질 — 세포, 브로스, 그리고 나중의 정제된 단백질 — 은 하나의 사물입니다. 그것을 담았던 생산 바이오리액터는 다른 사물인데, 장비는 여러 배치에 걸쳐 지속되며 물질과 융합되어서는 안 되기 때문입니다. 세포를 키운 발효(fermentation)는 둘 다 참여하는 세 번째 사물입니다. 98.611 % 단량체 순도(monomer purity)는 네 번째로, 원료의약품 로트에만 깃들고 그 밖 어디에도 없는 quality입니다. 그 용기가 "이 캠페인의 생산 반응기"라는 지위에 서 있다는 것은 다섯 번째로, 그것이 짊어지며 벗을 수도 있는 role입니다. 그리고 전체 공정을 규정한 마스터 배치 기록(master batch record)은 여섯 번째로, 어떤 출력물과도 구별되는 복사 가능한 정보입니다. 여섯 존재, 하나의 배치 — 그리고 NeOn 재사용 시나리오는 그 존재의 무리가 걸쳐 있는 모든 수준에서 재사용 가능한 자원을 찾으라고 일러 줍니다. 높은 곳에서 빌릴수록 임포트 하나당 가장 많은 호환성을 사기 때문입니다. 캠페인을 위에서 아래로 조사하면 네 계층이 나옵니다.
- 토대(Foundational). 하나의 상위 온톨로지가 모든 것을 떠받칩니다. ISO/IEC 21838-2로 표준화된 기본 형식 온톨로지(Basic Formal Ontology), 즉 BFO입니다 [1]. 그것은 도메인 용어를 전혀 기여하지 않습니다 — 오직 물질 존재(material entity), quality, process, role만을 줍니다 — 그러나 그것이야말로 그 하나의 배치 안 여섯 사물이 각각 올바른 종류의 거처를 찾게 해 주는 것입니다. 용기와 브로스는 둘 다 물질 존재(
obo:BFO_0000040)이면서도 별개의 개체로 남고, 발효는 모델이 그것이 산출하는 물질과 결코 혼동하지 않는 process(obo:BFO_0000015)이며, 순도는 빈 탱크에 우연히 단언될 수 없는 quality(obo:BFO_0000019)이고, 생산 반응기라는 지위는 role(obo:BFO_0000023)입니다. 지속하는 것과 일어나는 것을 가르는 이 continuant/occurrent 분리는 상위 척추 장이 세운 등뼈이며, 배치 추적성을 사 주는 것입니다. 용기와 물질이 별개의 continuant이기 때문에, 그래프는 나중에 두 번째 배치가 같은BR-101에서 돌았다고 모순 없이 말할 수 있고, 발효가 둘 다 참여하는 occurrent이기 때문에 "이것은 언제 일어났는가?"가 붙을 자리를 가집니다. - 중간 수준(Mid-level) — 산업 온톨로지 파운드리(Industrial Ontologies Foundry)가 발행한 IOF Core는 BFO와 공장 사이에 자리합니다: 물질 인공물(material artifact), 제조 프로세스(manufacturing process), 장비(piece of equipment), 요구사항 명세(requirement specification) [5]. 이것이
bp:Batch를 IOF 물질 인공물로, 발효를 IOF 제조 프로세스로 만드는 단입니다 —98.611 %순도 로트가 어떤 항체 고유 용어가 그려지기 전에 필요로 하는 범용 제조 어휘입니다. IOF는 원칙 기반의 조율된 온톨로지 구축이 대규모로 작동함을 입증한 생명과학 커뮤니티인 OBO Foundry를 의도적으로 본떠 모델링되었습니다 [3]. - 도메인(Domain) — 두 도메인 가족이 여기서 만납니다. IOF 바이오제약(biopharma) 모듈은 캠페인이 거쳐 가는 제조 내부를 공급합니다: 바이오리액터, 크로마토그래피 칼럼과 매질, 막 필터, 그리고 단위 조작 사슬 자체 — 포획, 바이러스 제거, 폴리싱, UF/DF, 제형화 — 에 더해 세포주와 클론 세포주, 그리고 피드 속도를 순도에 잇는 QbD 파라미터/범위 클래스까지 줍니다. OBO 멤버는 그 조작 아래의 생물학과 과학을 공급합니다: IgG 분자 기능을 위한 유전자 온톨로지(Gene Ontology, GO) [6], 항체의 표적을 위한 단백질 온톨로지(Protein Ontology, PRO) [7], 중국 햄스터 숙주를 위한 NCBI Taxonomy [9], CHO 세포주를 위한 세포주 온톨로지(Cell Line Ontology, CLO) [10], 산물 개념이 명명하는 적응증을 위한 인간 질병 온톨로지(Human Disease Ontology) [8], 분석법과 조사를 위한 OBI [11], 제형 부형제를 위한 ChEBI, 산물 및 작용 기전 개념을 위한 NCIt, 그리고 마스터 배치 기록 같은 정보 인공물을 위한 IAO입니다.
- 횡단(Cross-cutting) — 어떤 도메인이든 재사용하는 직교 어휘들입니다: 단위를 위한 QUDT(그래서 순도, 바이러스 불활성화 유지의 pH, 충전 부피가 결코 맨숫자로 돌아다니지 않습니다), 활동 출처를 위한 PROV-O, 바이오리액터 센서를 위한 SOSA, 정의와 매핑을 위한 SKOS, 메타데이터를 위한 Dublin Core, 그리고 크로마토그래피 장치와 출하를 결정하는 분석 결과를 위한 Allotrope Foundation Ontologies (AFO)입니다.
# align.ttl — the four reuse layers, each a real prefix bound to a verified host.
@prefix obo: <http://purl.obolibrary.org/obo/> . # BFO, RO, OBI, GO, CLO, NCIT, NCBITaxon, PR, DOID, IAO, PATO
@prefix iof: <https://spec.industrialontologies.org/ontology/construct/> . # IOF Core (classes mint under /construct/)
@prefix af-p: <http://purl.allotrope.org/ontologies/process#> .
@prefix qudt: <http://qudt.org/schema/qudt/> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix sosa: <http://www.w3.org/ns/sosa/> .
@prefix dct: <http://purl.org/dc/terms/> .
저 한 줄짜리 프리픽스 블록이 바로 조사의 결과입니다: 모델이 닿는 모든 외부 세계가, 도메인 클래스가 그려지기 전에 한 번씩 명명되었습니다 — 그리고 각 프리픽스는 실제 배치 안 여섯 존재 중 하나가 그것을 필요로 했기 때문에 제자리를 얻습니다.
후보를 어떻게 찾는가: 레지스트리, 그리고 그것이 말해 줄 수 없는 것
찾아낼 수 없는 용어는 재사용할 수 없으므로, 조사는 이 분야 레지스트리들을 가로지르는 탐색입니다. 위 계층의 각 온톨로지는 추측된 것이 아니라 찾아진 것이며, 그 찾음은 어디를 보아야 하는지에 대한 자취를 남깁니다:
- OLS4 — EBI 온톨로지 룩업 서비스 — 는 OBO 세계로 들어가는 정문입니다. 이 모델 안 모든 BFO, RO, OBI, GO, CLO, NCIT, NCBITaxon, PR, DOID, IAO, PATO IRI는 거기서, 살아 있는 용어 페이지에 대조해 확인되었습니다 — 중국 햄스터를 명명하는
obo:NCBITaxon_10029와 세포주를 명명하는obo:CLO_0002421"CHO cell"을 포함해서 말입니다. - 발행된 IOF 릴리스는 IOF로 들어가는 정문입니다. OLS가 IOF를 호스팅하지 않기 때문입니다. IOF Core 및 바이오제약 용어 — 바이오리액터, 포획 단계, 크로마토그래피 매질, 의약품 완제품 제형화 프로세스 — 는
github.com/iofoundry/ontology의Release_202602에 대조해 검증되었습니다. 용어 IRI와 모듈 온톨로지 IRI 모두 살아 있고 역참조 가능합니다. - BioPortal과 OBO Foundry는 OBO 탐색을 마저 채웁니다 — OBO Foundry의 원칙 페이지는 주어진 종류의 사물에 대해 어떤 온톨로지가 정전(canonical)의 거처인지 일러 주어(표적 단백질 → PRO, 적응증 → 질병 온톨로지), 두 항체 프로그램이 같은 것을 집어 들게 합니다 [3].
- LOV(Linked Open Vocabularies)와 발행자 자신의 사이트는 횡단 계층을 다룹니다:
qudt.org의 QUDT, W3C의 PROV-O와 SOSA, Allotrope 릴리스의 AFO입니다.
레지스트리가 말해 줄 수 없는 것은 올바른 적중을 고르는 데 필요한 도메인 지식이며 — 그 장벽은 바이오제약에서 실재합니다. 레지스트리는 수십 개의 "cell line" 용어를 반환할 것입니다. 제조 세포주가 연구-마스터-워킹 보관 규율을 갖춘 관리되는 생산 입력물임을 아는 사람만이, 제조적 의미가 IOF 바이오제약에 살고 생물학적 의미(CHO 세포, 세포주 나무의 한 노드)는 CLO에 산다는 것을 알 것입니다. 레지스트리는 "chromatography medium"을 나열하되, Protein A 포획 단계에서 그 매질이 그래프가 나중에 사이클 수와 이월(carryover)을 추적해야 할 소모품임은 알지 못합니다. 각 IRI가 어디서 확인되었는가에 대한 정직한 기록 자체가 하나의 재사용 산출물이며 — 정렬 파일의 헤더에 적혀 들어갑니다 — 출처를 댈 수 없는 빌린 용어는 리뷰에서 방어할 수 없는 용어이고, CHO 공정을 검토하는 규제 당국은 바로 그것을 물을 것이기 때문입니다.
무엇을 빌릴지 선택하라: 기준, 그리고 근접 실패가 위험한 이유
후보를 찾는 것과 그것을 채택하는 것은 같지 않습니다. 각 조사 적중은 간선을 얻기 전에 고정된 선택 기준 묶음에 비추어 판단됩니다 — 그리고 규제 대상 항체 캠페인에서 잘못된 채택의 비용은 추상적이지 않습니다:
- 포괄 범위(Coverage) — 그 용어가 로컬한 사물을 정확히 뜻하는가, 아니면 대략만 뜻하는가? 근접 실패는 로컬 발행보다 나쁜데, 멀리 퍼져 가는 거짓을 단언하기 때문입니다. (이것이
bp:Specification이iof:RequirementSpecification에 정렬되는 까닭입니다 — 빌릴 맨iof:Specification클래스가 없습니다.) - 성숙도(Maturity) — 그 용어가 Released인가, 아니면 잠정적이고 곧 움직일 법한가? IOF 바이오제약 릴리스를 재감사한 결과 그 바이오리액터, 크로마토그래피 칼럼, 마스터 레시피 클래스가 모두 이전 패스가 가정했던
Provisional이 아니라Released임이 드러났고 — 이것이 캠페인의 장비와 레시피를, 표시된 로컬 발행으로 남겨 두는 대신 확신을 가지고 채택하게 한 것입니다. - 채택(Adoption) — 그 온톨로지가 상호운용하고 싶은 데이터베이스와 파트너에게 실제로 쓰이는가? GO와 PRO는 이것만으로 이깁니다. 공개 데이터베이스가 기본으로 그것에 주석을 달기 때문에, 항체의 표적은 이미 PRO IRI와 GO 분자 기능 주석을 갖춘 채 기다리고 있습니다 [6][7].
- 논리적 양립성(Logical compatibility) — 같은 BFO 등뼈 위에 앉아 있어서, 그것을 임포트해도 모델이 비일관해질 수 없는가? CLO 세포 유형과 IOF 세포주는 둘 다 BFO에서 내려오며, 이것이 하나의
bp:CellLine이 둘을 동시에 걸칠 수 있는 유일한 이유입니다. - 라이선스와 임포트 비용(License and import cost) — 자유롭게 재사용 가능한가, 그리고 끌어들일 파일은 얼마나 무거운가?
후보가 포괄 범위에서 실패하고 충실한 1:1 외부 용어가 존재하지 않을 때, 규율은 그 클래스를 로컬로 두고 표시하는 것이지 빌림을 가장하는 것이 아닙니다 — 그리고 이 캠페인에서 그런 가장 큰 간극은 충전·완제(fill-finish)에 있습니다. IOF 바이오제약 릴리스에는 의약품 완제품 제형화 프로세스는 있지만 충전·완제, 무균 충전, 동결건조 클래스는 전혀 없으므로, bp:FillFinishProcess, bp:ContainerClosureSystem, bp:fillsInto는 표시된 로컬 클래스로 남습니다. 어떤 근접 용어를 그것들에 억지로 구부리려는 유혹이 있고, 그렇게 했을 때의 비용은 구체적입니다: 규제 제출물을 조립하는 하류 임포터는 "무균 충전"의 진짜 의미를 기대하며, 가장된 간선은 벌크 항체가 환자가 받는 멸균·밀봉 바이알이 되는 바로 그 단일 단계를 조용히 잘못 라벨링할 것입니다. 전하 변이체, 응집 변이체, GS1 포장 계층, 거버넌스 기록도 같은 이유로 로컬로 유지됩니다 — 문서화된 간극은 정직하고, 충실하지 않은 간선은 가장 나쁜 때에 표면화되는 잠복 오류입니다.
빌림을 형식화하라: align.ttl, 그리고 임포트 간극
재사용 단계는 정확히 하나의 산출물을 만듭니다: align.ttl, 각 로컬 bp: 용어에서 실재하며 역참조 가능한 외부 IRI로 올라가는 rdfs:subClassOf(그리고 rdfs:subPropertyOf) 간선을 단언하는 것 외에는 아무 일도 하지 않는 파일입니다. 여기 그 생물학·제조 핵심이 있습니다 — NCBI Taxonomy에서 빌린 숙주, CLO에서 빌린 세포주의 생물학, IOF 바이오제약에서 빌린 그 제조 역할, GO에서 빌린 IgG 자체, 그리고 IOF에서 빌린 포획 소모품입니다:
# align.ttl — the host is borrowed (NCBI Taxonomy), the line's biology (CLO) and role (IOF) too.
bp:HostOrganism rdfs:subClassOf obo:NCBITaxon_10029 . # NCBI Taxonomy 'Cricetulus griseus' (Chinese hamster, verified via OLS4)
bp:WorkingCellBank rdfs:subClassOf obo:CLO_0002421 . # CLO 'CHO cell' (Chinese hamster ovary cell line)
bp:CellLine rdfs:subClassOf iof:CellLine . # IOF biopharma 'cell line' (Released, Release_202602)
bp:Clone rdfs:subClassOf iof:ClonedCellLine . # IOF biopharma 'cloned cell line'
bp:Antibody rdfs:subClassOf obo:GO_0071735 . # GO 'IgG immunoglobulin complex'
bp:Excipient rdfs:subClassOf obo:CHEBI_24431 . # ChEBI 'chemical entity' — the generic anchor; specific excipients (polysorbate, histidine, sucrose) would use ChEBI leaves
bp:CaptureChromatography rdfs:subClassOf iof:CaptureStep . # IOF 'capture step' (Protein A capture)
bp:ChromatographyResin rdfs:subClassOf iof:ChromatographyMedium . # IOF biopharma 'chromatography medium' (Released)
각 줄은 단순한 어휘 간선이 아니라 제조상의 사실을 실어 나릅니다. bp:HostOrganism rdfs:subClassOf obo:NCBITaxon_10029은 세포 은행 뿌리가 그 종을 문자열이 아니라 안정적인 식별자로 명명하게 해 주는 것 — 오인식에 맞서는 계보의 첫 방어선입니다. bp:Excipient rdfs:subClassOf obo:CHEBI_24431은 제형화된 항체를 안정하게 유지하는 폴리소르베이트-80, 히스티딘, 수크로스를 ChEBI의 범용 화학 존재(chemical entity)에 닻으로 붙듭니다. 데이터셋은 일부러 범용 닻에서 멈추고 구체적 리프 IRI를 예시적인 것으로 표시하는데, 바로 위의 정직한 간극 규율 그대로입니다. 그리고 bp:CaptureChromatography rdfs:subClassOf iof:CaptureStep은 모든 배치가 거쳐 가는 Protein A 단계를, 파트너의 도구가 이미 이해하는 공유 제조 개념으로 유형 지정합니다.
이제 이 장에서 가장 중요한 문장입니다. 대부분의 채택이 걸려 넘어지는 간극이기 때문입니다. align.ttl에는 owl:imports가 전혀 없습니다. rdfs:subClassOf iof:CaptureStep을 단언하면 다른 팀의 IOF 인식 도구가 줄 세울 수 있는 실재하고 공유되는 IRI를 줍니다 — 그러나 그것만으로는 추론기가 bp:CaptureChromatography가 BFO 프로세스라고 결론짓게 만들지는 않습니다. iof:CaptureStep에서 IOF를 거쳐 BFO까지 올라가는 사슬이 검증기가 로드하지 않는 파일 안에 살기 때문입니다. 검증기는 bioproc.ttl + align.ttl + instances.ttl만 로드하므로, OWL-RL 폐포는 여기서 단언된 간선들에 대한 전이적 rdfs:subClassOf에 로컬 공리를 더한 것은 얻지만 — IOF 자신의 사슬도, BFO의 disjointness도 얻지 못합니다. 그 결과는 어휘적 상호운용성(lexical interoperability)(공유되고 실재하며 역참조 가능한 IRI)이지, 교차 온톨로지 함의(cross-ontology entailment)가 아닙니다.
그것이 항체 세계에서 구체적으로 무엇을 사 줄까요? 도구가 IOF를 말하는 위탁 제조사나 규제 당국은 영어 산문을 단 한 번도 비교하지 않고 당신의 bp:CaptureChromatography 배치를 그들의 포획 단계 개념과 줄 세울 수 있고, 단백질을 PRO에 주석 다는 공개 데이터베이스는 당신 항체의 표적을 그 기록에 결합할 수 있으며, "어떤 로트가 중국 햄스터 세포주에서 나왔는가?"를 질의하는 파트너는 숙주가 다른 모두가 쓰는 같은 obo:NCBITaxon_10029을 실어 나르기 때문에 당신의 배치를 돌려받습니다. 만약 그들이 정렬할 수 없다면 — 숙주가 문자열 "CHO"이고 포획 단계가 사적 코드라면 — 그 결합 하나하나가 영영 유지해야 할 손수 만든 번역 표가 됩니다. 단언을 추론으로 바꾸려면 IOF Core(그것 자체가 BFO 2020을 임포트)를 owl:imports하고, 그러면 추론기가 당신 용어를 스택 전체를 통해 분류합니다. 러닝 예제는 두 절반을 정직하게 다 합니다: align.ttl은 확인할 수 있었던 IOF 용어를 재사용하고, 동반 파일 bioproc-imports.ttl이 실제 owl:imports 선언을 실어 나릅니다 — 한편 오프라인 검증기는 외부 스택을 가져오지 않고 증명할 수 있는 것에 범위를 한정한 채 머뭅니다. 한 줄 요약: 정렬은 공유 어휘를 공짜로 사 주고, 교차 온톨로지 추론은 임포트해야만 산다.
조사가 장을 보는 재사용 스택: 중립적 상위 온톨로지, OBO Foundry를 본뜬 산업 중간 수준, 생물학을 위한 바이오제약 도메인과 OBO 멤버, 그리고 그것들 모두로 위로 정렬하는 로컬 어휘 — 그래서 로컬 클래스가 호환성을 공짜로 물려받고,
align.ttl은 그 위로 향하는 간선 하나하나를 단언하는 파일입니다.
저자가 AI의 도움을 받아 직접 제작한 그림입니다.
OBO–IOF 이음새: 살아 있는 세포를 관통하는, 당신이 저작하는 크로스워크
여기서 재사용은 단 하나의 깔끔한 임포트가 아닙니다. 그것은 단층선에 걸쳐 있으며, 그 단층선은 그래프 전체에서 가장 중요한 노드 — 세포주 — 를 곧장 관통합니다. 세포주의 생물학을 가장 잘 기술하는 온톨로지 — CLO, NCBI Taxonomy, GO, PRO — 는 OBO Foundry에서 자랐습니다. 항체를 만드는 것을 가장 잘 기술하는 온톨로지 — IOF Core와 IOF 바이오제약 — 는 산업 온톨로지 파운드리에서 자랐습니다. 둘 다 BFO에서 내려오며, 바로 그것이 하나의 bp:CellLine이 obo:CLO_0002421(그 생물학, CHO 세포)과 iof:CellLine(그 제조 역할, 관리되는 생산 입력물) 아래에 동시에 앉을 수 있는 까닭입니다. 그러나 "만날 수 있다"가 "만났다"는 아닙니다: CLO의 CHO 세포가 IOF의 세포주와 어떻게 관계되는지를 말하는, 발행된 다리가 없으므로 그 크로스워크는 저자가 큐레이션합니다 — 프로그램이 쓰고, 검토하고, 유지하는 매핑이지 임포트하는 기능이 아닙니다.
이음새가 다른 어디보다 여기서 중요한 까닭은 왜 세포 은행이 애초에 계보를 필요로 하는가에 있습니다. 세포주는 살아 있습니다: 세대를 거치며 돌연변이하고 표류하는 세포의 집단이므로, 워킹 은행은 마스터와 유전적으로 동일하지 않고, 너무 오래 키운 배양은 생산성을 잃거나 산물 품질을 바꿀 수 있습니다. 그래서 캠페인은 누구도 보증할 수 없는 바이알 하나가 아니라, 특성 규명되고 계대가 제한된 disjoint 계층의 구조화된 분류 체계인 연구 / 마스터 / 워킹 보관 위계(RCB → MCB → WCB)를 유지합니다. 이음새의 생물학적 측면(이것은 여전히 CHO 세포인가? 그 종은 무엇인가?)과 제조적 측면(이 WCB는 검증된 계대 한도 안에 있고 완전히 특성 규명되었는가?)은 둘 다 같은 WCB-CHO-001에 대해 참이며, 오직 저작된 크로스워크만이 그것들을 함께 붙듭니다. 표적 장은 이 이음새를, 항체가 아직 산물 개념(product concept) — 어떤 세포가 분자를 만들기 전에 존재하는 정보 인공물 — 인 첫날 발견 경계에서 명명합니다. 재사용 단계는 그 이음새가 유지되는 산출물이 되는 곳이며, 그것을 가로지르는 빌린 간선 하나하나가 저자가 용어별로 정당화한 것이기 때문입니다.
평가: 재사용이 버텨 내는가?
재사용은 모든 단계가 그러하듯 — 그래프를 로드하고, 그 위에서 추론하며, 그것에 의존하는 역량 질문을 돌려 — 검증됩니다. CQ-20이 그 테스트이며, 그것은 순수한 재사용 검사입니다: 추론된 그래프에게 숙주 생물의 안정적인 외부 분류군 IRI를 반환하라고 요청하는데, 그것은 bp:HostOrganism이 obo:NCBITaxon_10029에 정렬되었기 때문에만 존재합니다:
# queries/CQ-20.rq — CQ-20: the host is named by a stable public identifier, not the string "CHO".
PREFIX bp: <https://example.org/bioproc#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX obo: <http://purl.obolibrary.org/obo/>
SELECT ?host ?taxon WHERE {
bp:WCB-CHO-001 bp:hasHostOrganism ?host .
?host a ?cls .
?cls rdfs:subClassOf ?taxon .
FILTER(STRSTARTS(STR(?taxon), STR(obo:)))
}
cq-catalog.json의 검사는 단일 행 host = CHO-host, taxon = NCBITaxon_10029을 요구하며 — validate.py는 정확히 그것을 반환합니다. 질의가 모든 계보 사슬의 뿌리에 있는 워킹 세포 은행 bp:WCB-CHO-001에서 시작해 align.ttl에 사는 간선(bp:HostOrganism rdfs:subClassOf obo:NCBITaxon_10029)을 타고 간다는 점에 주목하십시오: 이 테스트는 재사용이 이루어졌기 때문에만 통과하며, 숙주가 맨 문자열 "CHO"로 유형 지정되는 순간 실패할 것입니다. 두 번째 재사용 의존 테스트는 더 하류에서 돌아갑니다: bp:derivedFrom이 OBO Relation Ontology의 obo:RO_0001000 derives from에 정렬되고 전이적으로 선언되었기 때문에, CQ-01은 DP-001의 계통을 정제 사슬 — 원료의약품, 폴리싱, 바이러스 여과, 바이러스 불활성화, 포획 풀, 청징, 생물반응기 배치, 시드 트레인, 그리고 세 세포 은행 계층 — 을 거슬러 11개 조상까지, 조인 테이블도 손수 단언도 없이 걸어갑니다. 전체 데이터셋에 걸쳐 정렬은 2120 트리플의 그래프가 OWL-RL 아래 7137로 닫히는 규모로 확장되며, 소비되는 서로 다른 IOF 클래스는 27개(Core 7 + 바이오제약 20)로 늘어났습니다 — 짓기 전에 장을 본 것의 측정 가능한 수확입니다.
미해결된 부분: 빌림은 표류할 수 있고, 근접 실패는 숨을 수 있다
재사용은 하나의 위험을 다른 위험과 맞바꿉니다. 외부 IRI에 정렬함으로써 모델은 그 의미를 물려받지만 — 그 변화도 물려받습니다. NCBI Taxonomy는 개정되고, IOF는 새 릴리스를 내며, CLO 용어는 폐기될 수 있습니다. Release_202602에 대조해 검증된 간선은 그 릴리스에서 참이며 그 이후로는 유지 보수 의무가 되고, 그래서 거버넌스 장은 정렬을 변경 관리 아래의 버전 관리된 콘텐츠로 다룹니다. 더 미묘한 위험은 충실해 보이는 근접 실패입니다: NCIt의 적응증(Indication)과 작용 기전(Mechanism of Action)은 BFO 범주 주장이 아니라 공유 개념 이름에 대한 어휘적 다리(lexical bridges)로 묶이는데, NCIt가 BFO로 분할된 온톨로지가 아니라 시소러스이기 때문입니다 — 그것들을 함의 등급인 양 단언하면 충실하지 않은 주장을 그래프에 밀반입한 것입니다. 정렬이 전혀 손댈 수 없는 더 깊은 한계가 있습니다: 그것이 그토록 조심스레 명명하는 세포주가 살아 있다는 것입니다. IRI는 또렷하고 안정적인 동일성을 함의하지만, 어떤 owl:sameAs도 어떤 빌린 CLO 용어도 계대 60의 배양이 계대 5의 배양과 같은 존재인지 답하지 못하며, 어떤 정렬도 WCB-CHO-001로 라벨링된 바이알이 라벨이 주장하는 세포주를 실제로 담고 있음을 인증하지 못합니다. 세포주는 수십 년 동안 생명과학 전반에 걸쳐 혼동되고 교차오염되어 왔으며 — 바로 그래서 안정적인 식별자와 인증이 존재합니다 [10] — 제조 뿌리 노드에서 오인식은 가능한 한 최악의 오류입니다: 완전한 확신을 가지고 단언되고, derivedFrom을 통해 모든 후손 배치로 전이적으로 전파되며, 그 어떤 하류 데이터 무결성도 그것을 잡아내지 못합니다. 모든 하류 사실이 잘못 식별된 뿌리에서 올바르게 유래되었기 때문입니다. 재사용은 뿌리에 안정적이고 공개된 이름을 줍니다. 그것은 뿌리에 있는 사물이 이름이 말하는 그것이게 만들 수는 없습니다. 재사용을 정직하게 유지하는 규율은 그것을 값지게 만드는 규율과 같습니다: 진정으로 일치하는 것만 빌리고, 출처를 명명하며, 간극을 표시하라 — 결코 가장하지 말고.
왜 중요한가
재사용 단계는 모델이 상호운용 가능할지, 아니면 그저 내부적으로 일관될 뿐일지를 결정하는 곳입니다. 숙주를 obo:NCBITaxon_10029로 빌리면 파트너가 "어떤 로트가 중국 햄스터 세포주에서 나왔는가?"를 모든 프로그램의 그래프에 걸쳐 한 번에 물을 수 있고, Protein A 단계를 iof:CaptureStep으로 빌리면 위탁 제조사의 IOF 인식 도구가 번역 없이 당신의 배치를 줄 세우며, IgG를 obo:GO_0071735로 빌리면 항체의 분자 기능이 생명의학의 공개 웹에 결합되고, 부형제를 ChEBI까지 빌리면 제형이 묻혀 있는 레시피가 아니라 추적 가능한 구조가 됩니다. CQ-20이 통과하고, CQ-01이 그 11개 조상을 반환하며, 규제 당국의 구조화 데이터 기대치가 이미 절반은 충족됩니다 — 모두 조사가 먼저 이루어졌기 때문입니다. 그것을 건너뛰고 종, 단위 조작, 항체, 부형제에 사적 코드를 발행하면, 그 연결 하나하나가 로트가 실패하고 회수 범위를 지금 정해야 할 가장 나쁜 때에 치르는 개조 프로젝트가 됩니다. 세포 은행은 수명주기에서 동일성을 올바르게 잡기에 가장 값싸고 잘못 잡으면 가장 비싼 자리이며, 재사용 단계는 그 청구서가 만기가 되는 — 혹은 되지 않는 — 곳입니다.
실제 현장에서는
재사용 우선은 연구 정보학에서 확립된 관행이며 제조에서는 아직 성숙하는 중입니다. GO, PRO, OBI, CLO, 그리고 질병 온톨로지는 성숙하고 자금이 있으며 공개 데이터베이스 전반에서 기본으로 재사용됩니다 [6][7][10]. 실제 항체 프로그램의 표적은 이미 PRO IRI와 GO 주석을 갖춘 채 기다리고 있고, 상업적 항체 생산을 지배하는 CHO 세포는 서열이 밝혀진 공개 유전체와 빌릴 준비가 된 안정적인 분류학 및 세포주 식별자를 가집니다. RCB/MCB/WCB 위계와 그 특성 규명도 선택적인 모범 관행이 아닙니다. 그것들은 세포 기질에 관한 규제 지침의 기대이므로, 모든 실제 프로그램은 이 재사용이 닻으로 붙드는 바로 그 보관 계보를 이미 정확히 유지합니다. IOF 바이오제약 모듈은 최근에 릴리스되었고 실질적입니다 — 단위 조작, 장비, 물질, QbD 파라미터의 Released 어휘입니다 — 그러나 OBO 측이 누리는 규모로는 아직 채택되지 않았고, 실제 구멍(충전·완제 클래스 없음)을 가지고 있습니다. 이 책이 걷는 최전선은 바로 그 결합입니다: 표적의 OBO 동일성을 IOF로 기술된 세포주, 생물반응기 배치, 의약품 완제품까지 끝까지 실어 나르고, 두 세계가 만나는 살아 있는 세포에서 OBO–IOF 크로스워크를 손으로 저작하며, 정렬을 일회성 매핑 스프레드시트가 아니라 유지되고 버전 관리되는 재사용 산출물로서 발행하는 일입니다.
핵심 용어
- 재사용(NeOn 시나리오) — 새 용어를 저작하기 전에 기존 온톨로지를 조사하고, 찾고, 선택하고, 정렬하는 수명주기 단계. 여기서 CQ-20(안정적 숙주 동일성)을, 그리고 전이적으로 CQ-01(11개 조상 계통 걷기)을 떠받치는 비기능 요구사항입니다.
- 계층별 조사(Layered survey) — 재사용 가능한 용어를 토대(BFO), 중간 수준(IOF Core), 도메인(IOF 바이오제약 + OBO 멤버), 횡단(QUDT, PROV-O, SOSA, SKOS, Dublin Core, AFO) 수준에서 찾는 것 — 각각이 하나의 배치 안 서로 다른 존재로 정당화됩니다.
- continuant / occurrent 분리 — 지속하는 것(배치 물질, 용기, 순도, role)과 일어나는 것(발효, 포획 단계)을 가르는 BFO의 구별. 장비, 물질, 활동을 분리 가능하게 유지해 하나의 용기가 모순 없이 여러 배치를 호스팅하게 하는 것입니다.
- 레지스트리(Registry) — 후보를 찾는 데 쓰이는 카탈로그: OBO를 위한 OLS4와 OBO Foundry와 BioPortal, IOF를 위한 발행된 IOF 릴리스, 횡단 계층을 위한 LOV와 발행자 사이트. 그것이 공급할 수 없는 것은 올바른 적중을 고르는 도메인 지식입니다.
- 선택 기준(Selection criteria) — 포괄 범위, 성숙도, 채택, 논리적 양립성, 라이선스, 임포트 비용. 찾아낸 용어가 정렬 간선을 얻기 전에 통과하는 테스트로, 거짓을 단언하는 근접 실패가 표시된 로컬 발행보다 나쁩니다.
- 어휘적 정렬 vs. owl:imports — 외부 IRI에
rdfs:subClassOf을 단언하면 외부 파일을 로드하지 않고도 공유 어휘를 사 줍니다(그래서 파트너의 IOF 도구가 당신의 배치를 정렬).owl:imports는 외부 사슬을 끌어들여 교차 온톨로지 함의를 사 줍니다. - align.ttl — 단 하나의 재사용 산출물: 로컬
bp:용어에서 검증된 외부 IRI로 올라가는rdfs:subClassOf/rdfs:subPropertyOf간선의 파일로, 용어별로 검증 출처가 기록됩니다. - OBO–IOF 이음새 — 생명의학(OBO)과 제조(IOF) 온톨로지 사이의 다리 놓이지 않은 경계. 둘 다 BFO에 뿌리내려 하나의
bp:CellLine이 둘을 걸칠 수 있지만, 살아 있는 세포를 관통하는 크로스워크는 저자가 큐레이션하고 유지합니다.
다음 이야기
부품은 사졌고 부품 목록은 적혔습니다. 빌린 어휘가 고정되었으니, 개념화 단계는 마침내 로컬 용어 — 조사가 아무도 발행하지 않음을 입증한 소수의 클래스, IOF 간극이 우리에게 남긴 충전·완제와 변이체 클래스를 포함해 — 를 그릴 수 있습니다. 다음 장, 개념화: 클래스와 분류 체계는 빌림에서 저작으로 돌아섭니다: 각 로컬 bp: 클래스를 명명하고, 그 BFO 범주를 고정하며, 모든 새 용어가 재사용된 용어를 특수화하거나 정당화되고 표시된 로컬 발행으로 제자리를 얻도록 분류 체계를 배열합니다.